* installing to library ‘/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages’
* 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: ‘Debian clang version 18.1.0 (rc4-1)’
using C++ compiler: ‘Debian clang version 18.1.0 (rc4-1)’
using C++11
make[1]: Entering directory '/tmp/RtmpYzeDhV/R.INSTALL303a383110f323/s2/src'
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/cycleclock.cc -o absl/base/internal/cycleclock.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/raw_logging.cc -o absl/base/internal/raw_logging.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/scoped_set_env.cc -o absl/base/internal/scoped_set_env.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/spinlock_wait.cc -o absl/base/internal/spinlock_wait.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/strerror.cc -o absl/base/internal/strerror.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/sysinfo.cc -o absl/base/internal/sysinfo.o
In file included from absl/base/internal/sysinfo.cc:53:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/thread_identity.cc -o absl/base/internal/thread_identity.o
In file included from absl/base/internal/thread_identity.cc:27:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/throw_delegate.cc -o absl/base/internal/throw_delegate.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/internal/unscaledcycleclock.cc -o absl/base/internal/unscaledcycleclock.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/base/log_severity.cc -o absl/base/log_severity.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/container/internal/hashtablez_sampler.cc -o absl/container/internal/hashtablez_sampler.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/container/internal/raw_hash_set.cc -o absl/container/internal/raw_hash_set.o
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/failure_signal_handler.cc -o absl/debugging/failure_signal_handler.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/internal/address_is_readable.cc -o absl/debugging/internal/address_is_readable.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/internal/demangle.cc -o absl/debugging/internal/demangle.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/internal/elf_mem_image.cc -o absl/debugging/internal/elf_mem_image.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/internal/examine_stack.cc -o absl/debugging/internal/examine_stack.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/internal/stack_consumption.cc -o absl/debugging/internal/stack_consumption.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/internal/vdso_support.cc -o absl/debugging/internal/vdso_support.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/leak_check.cc -o absl/debugging/leak_check.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/stacktrace.cc -o absl/debugging/stacktrace.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/debugging/symbolize.cc -o absl/debugging/symbolize.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/numeric/int128.cc -o absl/numeric/int128.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/profiling/internal/exponential_biased.cc -o absl/profiling/internal/exponential_biased.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/profiling/internal/periodic_sampler.cc -o absl/profiling/internal/periodic_sampler.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/ascii.cc -o absl/strings/ascii.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/cord_analysis.cc -o absl/strings/cord_analysis.o
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/cord_buffer.cc -o absl/strings/cord_buffer.o
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/charconv_bigint.cc -o absl/strings/internal/charconv_bigint.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/charconv_parse.cc -o absl/strings/internal/charconv_parse.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/cord_internal.cc -o absl/strings/internal/cord_internal.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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_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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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_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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/cord_rep_btree.cc -o absl/strings/internal/cord_rep_btree.o
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::cord_internal::CordRep *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::cord_internal::CordRep *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_btree.cc:1047:16: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
 1047 |   Consume(rep, consume);
      |                ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_btree.cc:1047:16: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
 1047 |   Consume(rep, consume);
      |                ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<unsigned long>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<unsigned long>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<unsigned long>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_btree.cc:1047:16: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
 1047 |   Consume(rep, consume);
      |                ^
26 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::cord_internal::CordRep *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::cord_internal::CordRep *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_consume.cc:45:38: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
   45 | void Consume(CordRep* rep, ConsumeFn consume_fn) {
      |                                      ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_consume.cc:45:38: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
   45 | void Consume(CordRep* rep, ConsumeFn consume_fn) {
      |                                      ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<unsigned long>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<unsigned long>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<unsigned long>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_consume.cc:45:38: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
   45 | void Consume(CordRep* rep, ConsumeFn consume_fn) {
      |                                      ^
26 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/cord_rep_crc.cc -o absl/strings/internal/cord_rep_crc.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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_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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/cordz_functions.cc -o absl/strings/internal/cordz_functions.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/cordz_handle.cc -o absl/strings/internal/cordz_handle.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/memutil.cc -o absl/strings/internal/memutil.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/ostringstream.cc -o absl/strings/internal/ostringstream.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/pow10_helper.cc -o absl/strings/internal/pow10_helper.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/str_format/arg.cc -o absl/strings/internal/str_format/arg.o
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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/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")))
      |                      ^
11 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/str_format/extension.cc -o absl/strings/internal/str_format/extension.o
In file included from absl/strings/internal/str_format/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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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/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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/str_format/output.cc -o absl/strings/internal/str_format/output.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/str_format/parser.cc -o absl/strings/internal/str_format/parser.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),
      |           ^
7 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/internal/utf8.cc -o absl/strings/internal/utf8.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/match.cc -o absl/strings/match.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/numbers.cc -o absl/strings/numbers.o
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/str_cat.cc -o absl/strings/str_cat.o
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/str_replace.cc -o absl/strings/str_replace.o
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/str_split.cc -o absl/strings/str_split.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/string_view.cc -o absl/strings/string_view.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/strings/substitute.cc -o absl/strings/substitute.o
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:372:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  372 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:380:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  380 |     ABSL_BAD_CALL_IF(substitute_internal::PlaceholderBitmask(format) != 1,
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:389:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  389 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:399:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  399 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:410:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  410 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:422:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  422 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:435:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  435 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:446:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  446 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:458:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  458 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:470:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  470 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:483:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  483 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:611:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  611 |     ABSL_BAD_CALL_IF(substitute_internal::PlaceholderBitmask(format) != 0,
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:617:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  617 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:625:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  625 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:634:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  634 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:644:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  644 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:655:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  655 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:667:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  667 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:680:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  680 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:694:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  694 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:706:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  706 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:719:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  719 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
45 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/barrier.cc -o absl/synchronization/barrier.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/blocking_counter.cc -o absl/synchronization/blocking_counter.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/internal/create_thread_identity.cc -o absl/synchronization/internal/create_thread_identity.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/internal/graphcycles.cc -o absl/synchronization/internal/graphcycles.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/internal/per_thread_sem.cc -o absl/synchronization/internal/per_thread_sem.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/internal/waiter.cc -o absl/synchronization/internal/waiter.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/mutex.cc -o absl/synchronization/mutex.o
In file included from absl/synchronization/mutex.cc:42:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
absl/synchronization/mutex.cc:1220:21: warning: unused variable 'mu_events' [-Wunused-variable]
 1220 |         SynchEvent *mu_events = GetSynchEvent(mu);
      |                     ^~~~~~~~~
absl/synchronization/mutex.cc:1443:21: warning: unused variable 'mu_events' [-Wunused-variable]
 1443 |         SynchEvent *mu_events = GetSynchEvent(this);
      |                     ^~~~~~~~~
absl/synchronization/mutex.cc:2428:17: warning: unused variable 'e' [-Wunused-variable]
 2428 |     SynchEvent *e = GetSynchEvent(this);
      |                 ^
absl/synchronization/mutex.cc:2437:17: warning: unused variable 'e' [-Wunused-variable]
 2437 |     SynchEvent *e = GetSynchEvent(this);
      |                 ^
absl/synchronization/mutex.cc:1291:14: warning: unused function 'CurrentStackString' [-Wunused-function]
 1291 | static char *CurrentStackString(char *buf, int maxlen, bool symbolize) {
      |              ^~~~~~~~~~~~~~~~~~
10 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/synchronization/notification.cc -o absl/synchronization/notification.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/civil_time.cc -o absl/time/civil_time.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/clock.cc -o absl/time/clock.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/duration.cc -o absl/time/duration.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/format.cc -o absl/time/format.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/civil_time_detail.cc -o absl/time/internal/cctz/src/civil_time_detail.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_fixed.cc -o absl/time/internal/cctz/src/time_zone_fixed.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_format.cc -o absl/time/internal/cctz/src/time_zone_format.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_if.cc -o absl/time/internal/cctz/src/time_zone_if.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_impl.cc -o absl/time/internal/cctz/src/time_zone_impl.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_info.cc -o absl/time/internal/cctz/src/time_zone_info.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_libc.cc -o absl/time/internal/cctz/src/time_zone_libc.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_lookup.cc -o absl/time/internal/cctz/src/time_zone_lookup.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/time_zone_posix.cc -o absl/time/internal/cctz/src/time_zone_posix.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/internal/cctz/src/zone_info_source.cc -o absl/time/internal/cctz/src/zone_info_source.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/time/time.cc -o absl/time/time.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/types/bad_any_cast.cc -o absl/types/bad_any_cast.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/types/bad_optional_access.cc -o absl/types/bad_optional_access.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c absl/types/bad_variant_access.cc -o absl/types/bad_variant_access.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c cpp-compat.cpp -o cpp-compat.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-accessors.cpp -o s2-accessors.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-bounds.cpp -o s2-bounds.o
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-cell.cpp -o s2-cell.o
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __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.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.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-cell-union.cpp -o s2-cell-union.o
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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);
      |         ^
52 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-constructors-formatters.cpp -o s2-constructors-formatters.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-predicates.cpp -o s2-predicates.o
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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);
      |         ^
52 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-transformers.cpp -o s2-transformers.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
52 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c init.cpp -o init.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c RcppExports.cpp -o RcppExports.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-geography.cpp -o s2-geography.o
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-lnglat.cpp -o s2-lnglat.o
In file included from s2-lnglat.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2-matrix.cpp -o s2-matrix.o
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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,
      |                             ^
57 warnings generated.
clang-18 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3   -fpic  -g -O3 -Wall -pedantic -c wk-impl.c -o wk-impl.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/accessors.cc -o s2geography/accessors.o
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 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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/linear-referencing.cc -o s2geography/linear-referencing.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/distance.cc -o s2geography/distance.o
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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,
      |                             ^
57 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/build.cc -o s2geography/build.o
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1008:63: note: in instantiation of template class 'gtl::compact_array<int>' requested here
 1008 |     template<typename _Tp, typename = decltype(declval<_Tp&>().~_Tp())>
      |                                                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1009:24: note: in instantiation of default argument for '__test<gtl::compact_array<int>>' required here
 1009 |       static true_type __test(int);
      |                        ^~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1019:29: note: while substituting deduced template arguments into function template '__test' [with _Tp = gtl::compact_array<int>, $1 = (no value)]
 1019 |       using type = decltype(__test<_Tp>(0));
      |                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1031:14: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
 1031 |     : public __is_destructible_impl<typename
      |              ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1047:14: note: in instantiation of template class 'std::__is_destructible_safe<gtl::compact_array<int>>' requested here
 1047 |     : public __is_destructible_safe<_Tp>::type
      |              ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:188:21: note: in instantiation of template class 'std::is_destructible<gtl::compact_array<int>>' requested here
  188 |       static_assert(is_destructible<_Value_type>::value,
      |                     ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/alloc_traits.h:941:12: note: in instantiation of function template specialization 'std::_Destroy<gtl::compact_array<int> *>' requested here
  941 |       std::_Destroy(__first, __last);
      |            ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:732:7: note: in instantiation of function template specialization 'std::_Destroy<gtl::compact_array<int> *, gtl::compact_array<int>>' requested here
  732 |         std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      |              ^
../src/s2/s2builder.h:134:7: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::~vector' requested here
  134 | class S2Builder {
      |       ^
39 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/coverings.cc -o s2geography/coverings.o
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
52 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/geography.cc -o s2geography/geography.o
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2geography/predicates.cc -o s2geography/predicates.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/base/stringprintf.cc -o s2/base/stringprintf.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/base/strtoint.cc -o s2/base/strtoint.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/encoded_s2cell_id_vector.cc -o s2/encoded_s2cell_id_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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/encoded_s2point_vector.cc -o s2/encoded_s2point_vector.o
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_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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/id_set_lexicon.cc -o s2/id_set_lexicon.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/mutable_s2shape_index.cc -o s2/mutable_s2shape_index.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/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 {
      |       ^
43 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/r2rect.cc -o s2/r2rect.o
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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s1angle.cc -o s2/s1angle.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) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s1chord_angle.cc -o s2/s1chord_angle.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) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s1interval.cc -o s2/s1interval.o
In file included from s2/s1interval.cc:18:
In file included from ../src/s2/s1interval.h:27:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2boolean_operation.cc -o s2/s2boolean_operation.o
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
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 2 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  256 |   ~InlinedVector() {}
      |   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:163:11: note: in instantiation of function template specialization 'std::_Destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>' requested here
  163 |             std::_Destroy(std::__addressof(*__first));
      |                  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:196:2: note: in instantiation of function template specialization 'std::_Destroy_aux<false>::__destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2> *>' requested here
  196 |         __destroy(__first, __last);
      |         ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/alloc_traits.h:941:12: note: in instantiation of function template specialization 'std::_Destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2> *>' requested here
  941 |       std::_Destroy(__first, __last);
      |            ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:732:7: note: in instantiation of function template specialization 'std::_Destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2> *, absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>' requested here
  732 |         std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      |              ^
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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:151:19: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  151 |       __pointer->~_Tp();
      |                   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:163:11: note: in instantiation of function template specialization 'std::_Destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>' requested here
  163 |             std::_Destroy(std::__addressof(*__first));
      |                  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:196:2: note: in instantiation of function template specialization 'std::_Destroy_aux<false>::__destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2> *>' requested here
  196 |         __destroy(__first, __last);
      |         ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/alloc_traits.h:941:12: note: in instantiation of function template specialization 'std::_Destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2> *>' requested here
  941 |       std::_Destroy(__first, __last);
      |            ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:732:7: note: in instantiation of function template specialization 'std::_Destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2> *, absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>' requested here
  732 |         std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      |              ^
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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1008:63: note: in instantiation of template class 'gtl::compact_array<int>' requested here
 1008 |     template<typename _Tp, typename = decltype(declval<_Tp&>().~_Tp())>
      |                                                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1009:24: note: in instantiation of default argument for '__test<gtl::compact_array<int>>' required here
 1009 |       static true_type __test(int);
      |                        ^~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1019:29: note: while substituting deduced template arguments into function template '__test' [with _Tp = gtl::compact_array<int>, $1 = (no value)]
 1019 |       using type = decltype(__test<_Tp>(0));
      |                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1031:14: note: (skipping 3 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
 1031 |     : public __is_destructible_impl<typename
      |              ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/alloc_traits.h:941:12: note: in instantiation of function template specialization 'std::_Destroy<gtl::compact_array<int> *>' requested here
  941 |       std::_Destroy(__first, __last);
      |            ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:732:7: note: in instantiation of function template specialization 'std::_Destroy<gtl::compact_array<int> *, gtl::compact_array<int>>' requested here
  732 |         std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      |              ^
../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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/unique_ptr.h:398:4: note: in instantiation of member function 'std::default_delete<S2Builder>::operator()' requested here
  398 |           get_deleter()(std::move(__ptr));
      |           ^
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 {
      |       ^
44 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builder_graph.cc -o s2/s2builder_graph.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/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_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 {
      |       ^
41 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builder.cc -o s2/s2builder.o
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/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());
      |                                              ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<int>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
s2/s2builder.cc:729:19: note: in instantiation of template class 'gtl::compact_array<int>' requested here
  729 |     auto* sites = &edge_sites_[e];
      |                   ^
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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:140:14: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  140 |     : public node_handle_base<PolicyTraits, Alloc> {
      |              ^
../src/s2/s2point_index.h:226:15: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  226 |   map_.insert(std::make_pair(id, point_data));
      |               ^
../src/s2/s2point_index.h:231:3: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  231 |   Add(PointData(point, data));
      |   ^
s2/s2builder.cc:635:17: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  635 |     site_index->Add(sites_[id], id);
      |                 ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:140:14: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  140 |     : public node_handle_base<PolicyTraits, Alloc> {
      |              ^
../src/s2/s2point_index.h:226:15: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  226 |   map_.insert(std::make_pair(id, point_data));
      |               ^
../src/s2/s2point_index.h:231:3: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  231 |   Add(PointData(point, data));
      |   ^
s2/s2builder.cc:635:17: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  635 |     site_index->Add(sites_[id], id);
      |                 ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>, absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::Result, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>>::priority_queue<absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::Result, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>>::priority_queue<absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>, void>' 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);
      |                               ^
62 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_closed_set_normalizer.cc -o s2/s2builderutil_closed_set_normalizer.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_find_polygon_degeneracies.cc -o s2/s2builderutil_find_polygon_degeneracies.o
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_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 {
      |       ^
41 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_lax_polygon_layer.cc -o s2/s2builderutil_lax_polygon_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:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __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_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_s2point_vector_layer.cc -o s2/s2builderutil_s2point_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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_s2polygon_layer.cc -o s2/s2builderutil_s2polygon_layer.o
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_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 {
      |       ^
41 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_s2polyline_layer.cc -o s2/s2builderutil_s2polyline_layer.o
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __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_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)));
      |                                       ^
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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_s2polyline_vector_layer.cc -o s2/s2builderutil_s2polyline_vector_layer.o
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_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_snap_functions.cc -o s2/s2builderutil_snap_functions.o
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2builderutil_testing.cc -o s2/s2builderutil_testing.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:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __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_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)));
      |                                       ^
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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2cap.cc -o s2/s2cap.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2cell_id.cc -o s2/s2cell_id.o
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
34 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2cell_index.cc -o s2/s2cell_index.o
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/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,
      |                       ^
19 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2cell_union.cc -o s2/s2cell_union.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,
      |                       ^
19 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2cell.cc -o s2/s2cell.o
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2contains_vertex_query.cc -o s2/s2contains_vertex_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/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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2convex_hull_query.cc -o s2/s2convex_hull_query.o
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2debug.cc -o s2/s2debug.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2edge_clipping.cc -o s2/s2edge_clipping.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2edge_crosser.cc -o s2/s2edge_crosser.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2edge_crossings.cc -o s2/s2edge_crossings.o
In file included from s2/s2edge_crossings.cc:18:
In file included from ../src/s2/s2edge_crossings.h:36:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2error.cc -o s2/s2error.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2furthest_edge_query.cc -o s2/s2furthest_edge_query.o
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
52 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2latlng_rect_bounder.cc -o s2/s2latlng_rect_bounder.o
In file included from s2/s2latlng_rect_bounder.cc:18:
In file included from ../src/s2/s2latlng_rect_bounder.h:21:
In file included from ../src/s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2lax_loop_shape.cc -o s2/s2lax_loop_shape.o
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2lax_polygon_shape.cc -o s2/s2lax_polygon_shape.o
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2lax_polyline_shape.cc -o s2/s2lax_polyline_shape.o
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2loop_measures.cc -o s2/s2loop_measures.o
In file included from s2/s2loop_measures.cc:18:
In file included from ../src/s2/s2loop_measures.h:33:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2loop.cc -o s2/s2loop.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/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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
52 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2max_distance_targets.cc -o s2/s2max_distance_targets.o
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>, void>' 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,
      |                             ^
47 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2measures.cc -o s2/s2measures.o
In file included from s2/s2measures.cc:18:
In file included from ../src/s2/s2measures.h:24:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2metrics.cc -o s2/s2metrics.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2min_distance_targets.cc -o s2/s2min_distance_targets.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:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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);
      |         ^
59 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2padded_cell.cc -o s2/s2padded_cell.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2point_compression.cc -o s2/s2point_compression.o
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<std::pair<int, int>>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/s2point_compression.cc:320:36: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::FixedArray' requested here
  320 |   absl::FixedArray<pair<int, int>> vertices_pi_qi(points.size());
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:352:36: note: in instantiation of template class 'absl::is_trivially_destructible<std::pair<int, int>>' requested here
  352 |                                    is_trivially_destructible<T>::value> {
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<std::pair<int, int>>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/s2point_compression.cc:320:36: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::FixedArray' requested here
  320 |   absl::FixedArray<pair<int, int>> vertices_pi_qi(points.size());
      |                                    ^
s2/s2point_compression.cc:169:12: warning: unused function 'STtoPiQi' [-Wunused-function]
  169 | inline int STtoPiQi(double s, int level) {
      |            ^~~~~~~~
22 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2point_region.cc -o s2/s2point_region.o
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2pointutil.cc -o s2/s2pointutil.o
In file included from s2/s2pointutil.cc:18:
In file included from ../src/s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2polygon.cc -o s2/s2polygon.o
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1008:63: note: in instantiation of template class 'gtl::compact_array<int>' requested here
 1008 |     template<typename _Tp, typename = decltype(declval<_Tp&>().~_Tp())>
      |                                                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1009:24: note: in instantiation of default argument for '__test<gtl::compact_array<int>>' required here
 1009 |       static true_type __test(int);
      |                        ^~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1019:29: note: while substituting deduced template arguments into function template '__test' [with _Tp = gtl::compact_array<int>, $1 = (no value)]
 1019 |       using type = decltype(__test<_Tp>(0));
      |                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1031:14: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
 1031 |     : public __is_destructible_impl<typename
      |              ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/type_traits:1047:14: note: in instantiation of template class 'std::__is_destructible_safe<gtl::compact_array<int>>' requested here
 1047 |     : public __is_destructible_safe<_Tp>::type
      |              ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_construct.h:188:21: note: in instantiation of template class 'std::is_destructible<gtl::compact_array<int>>' requested here
  188 |       static_assert(is_destructible<_Value_type>::value,
      |                     ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/alloc_traits.h:941:12: note: in instantiation of function template specialization 'std::_Destroy<gtl::compact_array<int> *>' requested here
  941 |       std::_Destroy(__first, __last);
      |            ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:732:7: note: in instantiation of function template specialization 'std::_Destroy<gtl::compact_array<int> *, gtl::compact_array<int>>' requested here
  732 |         std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      |              ^
../src/s2/s2builder.h:134:7: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::~vector' requested here
  134 | class S2Builder {
      |       ^
55 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2polyline_alignment.cc -o s2/s2polyline_alignment.o
In file included from s2/s2polyline_alignment.cc:17:
In file included from ../src/s2/s2polyline_alignment.h:23:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2polyline_measures.cc -o s2/s2polyline_measures.o
In file included from s2/s2polyline_measures.cc:18:
In file included from ../src/s2/s2polyline_measures.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2polyline_simplifier.cc -o s2/s2polyline_simplifier.o
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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2polyline.cc -o s2/s2polyline.o
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2predicates.cc -o s2/s2predicates.o
In file included from s2/s2predicates.cc:18:
In file included from ../src/s2/s2predicates.h:38:
In file included from ../src/s2/s1chord_angle.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2projections.cc -o s2/s2projections.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2r2rect.cc -o s2/s2r2rect.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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2region_coverer.cc -o s2/s2region_coverer.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,
      |                       ^
19 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2region_intersection.cc -o s2/s2region_intersection.o
In file included from s2/s2region_intersection.cc:17:
In file included from ../src/s2/s2region_intersection.h:25:
In file included from ../src/s2/s2region.h:24:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2region_term_indexer.cc -o s2/s2region_term_indexer.o
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_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)));
      |                                       ^
34 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2region_union.cc -o s2/s2region_union.o
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) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2region.cc -o s2/s2region.o
In file included from s2/s2region.cc:18:
In file included from ../src/s2/s2region.h:24:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_queue.h:555:4: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  555 |         : c(), comp() { }
      |           ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of function template specialization 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue<absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>, void>' 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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2shape_index.cc -o s2/s2shape_index.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2shapeutil_build_polygon_boundaries.cc -o s2/s2shapeutil_build_polygon_boundaries.o
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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)));
      |                                       ^
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();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2shapeutil_contains_brute_force.cc -o s2/s2shapeutil_contains_brute_force.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2shapeutil_edge_iterator.cc -o s2/s2shapeutil_edge_iterator.o
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_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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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)));
      |                                       ^
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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2shapeutil_range_iterator.cc -o s2/s2shapeutil_range_iterator.o
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2testing.cc -o s2/s2testing.o
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2text_format.cc -o s2/s2text_format.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/s2wedge_relations.cc -o s2/s2wedge_relations.o
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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/strings/ostringstream.cc -o s2/strings/ostringstream.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/util/bits/bit-interleave.cc -o s2/util/bits/bit-interleave.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/util/coding/varint.cc -o s2/util/coding/varint.o
In file included from s2/util/coding/varint.cc:17:
In file included from ../src/s2/util/coding/varint.h:41:
In file included from ../src/s2/util/bits/bits.h:48:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -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.
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/util/math/mathutil.cc -o s2/util/math/mathutil.o
clang++-18 -std=gnu++11 -I"/home/hornik/tmp/R.check/r-devel-clang/Work/build/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/Rcpp/include' -I'/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/wk/include' -I/usr/local/include -D_FORTIFY_SOURCE=3  -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -g -O3 -Wall -pedantic -Wno-error=enum-constexpr-conversion  -c s2/util/units/length-units.cc -o s2/util/units/length-units.o
clang++-18 -std=gnu++11 -shared -L/home/hornik/tmp/R.check/r-devel-clang/Work/build/lib -Wl,-O1 -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 -L/home/hornik/tmp/R.check/r-devel-clang/Work/build/lib -lR
make[1]: Leaving directory '/tmp/RtmpYzeDhV/R.INSTALL303a383110f323/s2/src'
make[1]: Entering directory '/tmp/RtmpYzeDhV/R.INSTALL303a383110f323/s2/src'
make[1]: Leaving directory '/tmp/RtmpYzeDhV/R.INSTALL303a383110f323/s2/src'
installing to /home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/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)