Installing: fs
also installing the dependencies ‘sass’, ‘bslib’, ‘hunspell’, ‘pkgload’, ‘rmarkdown’, ‘spelling’, ‘testthat’

trying URL 'https://cloud.r-project.org/src/contrib/sass_0.4.10.tar.gz'
Content type 'application/x-gzip' length 3025163 bytes (2.9 MB)
==================================================
downloaded 2.9 MB

trying URL 'https://cloud.r-project.org/src/contrib/bslib_0.10.0.tar.gz'
Content type 'application/x-gzip' length 5769350 bytes (5.5 MB)
==================================================
downloaded 5.5 MB

trying URL 'https://cloud.r-project.org/src/contrib/hunspell_3.0.6.tar.gz'
Content type 'application/x-gzip' length 3214078 bytes (3.1 MB)
==================================================
downloaded 3.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/pkgload_1.5.2.tar.gz'
Content type 'application/x-gzip' length 88118 bytes (86 KB)
==================================================
downloaded 86 KB

trying URL 'https://cloud.r-project.org/src/contrib/rmarkdown_2.31.tar.gz'
Content type 'application/x-gzip' length 2199845 bytes (2.1 MB)
==================================================
downloaded 2.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/spelling_2.3.2.tar.gz'
Content type 'application/x-gzip' length 11800 bytes (11 KB)
==================================================
downloaded 11 KB

trying URL 'https://cloud.r-project.org/src/contrib/testthat_3.3.2.tar.gz'
Content type 'application/x-gzip' length 834043 bytes (814 KB)
==================================================
downloaded 814 KB

trying URL 'https://cloud.r-project.org/src/contrib/fs_2.1.0.tar.gz'
Content type 'application/x-gzip' length 1471347 bytes (1.4 MB)
==================================================
downloaded 1.4 MB

* installing *source* package ‘hunspell’ ...
** package ‘hunspell’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c dictionary.cpp -o dictionary.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parser.cpp -o parser.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parsers/textparser.cc -o parsers/textparser.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parsers/latexparser.cc -o parsers/latexparser.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parsers/manparser.cc -o parsers/manparser.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parsers/xmlparser.cc -o parsers/xmlparser.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parsers/htmlparser.cc -o parsers/htmlparser.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/affentry.cc -o hunspell/affentry.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/affixmgr.cc -o hunspell/affixmgr.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/filemgr.cc -o hunspell/filemgr.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/hashmgr.cc -o hunspell/hashmgr.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/hunspell.cc -o hunspell/hunspell.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/hunzip.cc -o hunspell/hunzip.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/phonet.cc -o hunspell/phonet.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/replist.cc -o hunspell/replist.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/suggestmgr.cc -o hunspell/suggestmgr.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -Ihunspell -DBUILDING_LIBHUNSPELL -I'/home/ubuntu/R/library/Rcpp/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hunspell/csutil.cc -o hunspell/csutil.o
ar rcs hunspell/libstathunspell.a parsers/textparser.o parsers/latexparser.o parsers/manparser.o parsers/xmlparser.o parsers/htmlparser.o hunspell/affentry.o hunspell/affixmgr.o hunspell/filemgr.o hunspell/hashmgr.o hunspell/hunspell.o hunspell/hunzip.o hunspell/phonet.o hunspell/replist.o hunspell/suggestmgr.o hunspell/csutil.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o hunspell.so RcppExports.o dictionary.o parser.o -Lhunspell -lstathunspell -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-hunspell/00new/hunspell/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** 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 (hunspell)
* installing *source* package ‘fs’ ...
** package ‘fs’ successfully unpacked and MD5 sums checked
** using staged installation
Package libuv was not found in the pkg-config search path.
Perhaps you should add the directory containing `libuv.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libuv', required by 'virtual:world', not found
Using PKG_CFLAGS=
Using PKG_LIBS=-luv
--------------------------- [CONFIGURE] --------------------------------
Configuration failed because libuv was not found. Try installing:
 * deb: libuv1-dev (Debian, Ubuntu, etc)
 * rpm: libuv-devel (Fedora, EPEL)
 * brew: libuv (OSX)
Alternatively set environment variable USE_BUNDLED_LIBUV=1 to build a static
version of libuv that is included with this package.
-------------------------- [ERROR MESSAGE] ---------------------------
<stdin>:1:10: fatal error: uv.h: No such file or directory
compilation terminated.
--------------------------------------------------------------------
ERROR: configuration failed for package ‘fs’
* removing ‘/home/ubuntu/R/library/fs’
ERROR: dependency ‘fs’ is not available for package ‘sass’
* removing ‘/home/ubuntu/R/library/sass’
ERROR: dependency ‘fs’ is not available for package ‘pkgload’
* removing ‘/home/ubuntu/R/library/pkgload’
* installing *source* package ‘spelling’ ...
** package ‘spelling’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (spelling)
ERROR: dependency ‘sass’ is not available for package ‘bslib’
* removing ‘/home/ubuntu/R/library/bslib’
ERROR: dependency ‘pkgload’ is not available for package ‘testthat’
* removing ‘/home/ubuntu/R/library/testthat’
ERROR: dependency ‘bslib’ is not available for package ‘rmarkdown’
* removing ‘/home/ubuntu/R/library/rmarkdown’

The downloaded source packages are in
	‘/tmp/Rtmpo365kZ/downloaded_packages’
Warning messages:
1: In install.packages(pkg, dependencies = TRUE, lib = user_lib) :
  installation of package ‘fs’ had non-zero exit status
2: In install.packages(pkg, dependencies = TRUE, lib = user_lib) :
  installation of package ‘sass’ had non-zero exit status
3: In install.packages(pkg, dependencies = TRUE, lib = user_lib) :
  installation of package ‘pkgload’ had non-zero exit status
4: In install.packages(pkg, dependencies = TRUE, lib = user_lib) :
  installation of package ‘bslib’ had non-zero exit status
5: In install.packages(pkg, dependencies = TRUE, lib = user_lib) :
  installation of package ‘testthat’ had non-zero exit status
6: In install.packages(pkg, dependencies = TRUE, lib = user_lib) :
  installation of package ‘rmarkdown’ had non-zero exit status
Installing: tidyverse
also installing the dependencies ‘sass’, ‘gargle’, ‘fs’, ‘arrow’, ‘bslib’, ‘pkgload’, ‘dbplyr’, ‘googledrive’, ‘googlesheets4’, ‘lubridate’, ‘readxl’, ‘reprex’, ‘rvest’, ‘feather’, ‘rmarkdown’, ‘testthat’

trying URL 'https://cloud.r-project.org/src/contrib/sass_0.4.10.tar.gz'
Content type 'application/x-gzip' length 3025163 bytes (2.9 MB)
==================================================
downloaded 2.9 MB

trying URL 'https://cloud.r-project.org/src/contrib/gargle_1.6.1.tar.gz'
Content type 'application/x-gzip' length 629852 bytes (615 KB)
==================================================
downloaded 615 KB

trying URL 'https://cloud.r-project.org/src/contrib/fs_2.1.0.tar.gz'
Content type 'application/x-gzip' length 1471347 bytes (1.4 MB)
==================================================
downloaded 1.4 MB

trying URL 'https://cloud.r-project.org/src/contrib/arrow_24.0.0.tar.gz'
Content type 'application/x-gzip' length 4337572 bytes (4.1 MB)
==================================================
downloaded 4.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/bslib_0.10.0.tar.gz'
Content type 'application/x-gzip' length 5769350 bytes (5.5 MB)
==================================================
downloaded 5.5 MB

trying URL 'https://cloud.r-project.org/src/contrib/pkgload_1.5.2.tar.gz'
Content type 'application/x-gzip' length 88118 bytes (86 KB)
==================================================
downloaded 86 KB

trying URL 'https://cloud.r-project.org/src/contrib/dbplyr_2.5.2.tar.gz'
Content type 'application/x-gzip' length 553396 bytes (540 KB)
==================================================
downloaded 540 KB

trying URL 'https://cloud.r-project.org/src/contrib/googledrive_2.1.2.tar.gz'
Content type 'application/x-gzip' length 1615911 bytes (1.5 MB)
==================================================
downloaded 1.5 MB

trying URL 'https://cloud.r-project.org/src/contrib/googlesheets4_1.1.2.tar.gz'
Content type 'application/x-gzip' length 231280 bytes (225 KB)
==================================================
downloaded 225 KB

trying URL 'https://cloud.r-project.org/src/contrib/lubridate_1.9.5.tar.gz'
Content type 'application/x-gzip' length 429855 bytes (419 KB)
==================================================
downloaded 419 KB

trying URL 'https://cloud.r-project.org/src/contrib/readxl_1.4.5.tar.gz'
Content type 'application/x-gzip' length 1636512 bytes (1.6 MB)
==================================================
downloaded 1.6 MB

trying URL 'https://cloud.r-project.org/src/contrib/reprex_2.1.1.tar.gz'
Content type 'application/x-gzip' length 1089023 bytes (1.0 MB)
==================================================
downloaded 1.0 MB

trying URL 'https://cloud.r-project.org/src/contrib/rvest_1.0.5.tar.gz'
Content type 'application/x-gzip' length 121721 bytes (118 KB)
==================================================
downloaded 118 KB

trying URL 'https://cloud.r-project.org/src/contrib/feather_0.4.0.tar.gz'
Content type 'application/x-gzip' length 8513 bytes
==================================================
downloaded 8513 bytes

trying URL 'https://cloud.r-project.org/src/contrib/rmarkdown_2.31.tar.gz'
Content type 'application/x-gzip' length 2199845 bytes (2.1 MB)
==================================================
downloaded 2.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/testthat_3.3.2.tar.gz'
Content type 'application/x-gzip' length 834043 bytes (814 KB)
==================================================
downloaded 814 KB

trying URL 'https://cloud.r-project.org/src/contrib/tidyverse_2.0.0.tar.gz'
Content type 'application/x-gzip' length 704618 bytes (688 KB)
==================================================
downloaded 688 KB

* installing *source* package ‘fs’ ...
** package ‘fs’ successfully unpacked and MD5 sums checked
** using staged installation
Package libuv was not found in the pkg-config search path.
Perhaps you should add the directory containing `libuv.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libuv', required by 'virtual:world', not found
Using PKG_CFLAGS=
Using PKG_LIBS=-luv
--------------------------- [CONFIGURE] --------------------------------
Configuration failed because libuv was not found. Try installing:
 * deb: libuv1-dev (Debian, Ubuntu, etc)
 * rpm: libuv-devel (Fedora, EPEL)
 * brew: libuv (OSX)
Alternatively set environment variable USE_BUNDLED_LIBUV=1 to build a static
version of libuv that is included with this package.
-------------------------- [ERROR MESSAGE] ---------------------------
<stdin>:1:10: fatal error: uv.h: No such file or directory
compilation terminated.
--------------------------------------------------------------------
ERROR: configuration failed for package ‘fs’
* removing ‘/home/ubuntu/R/library/fs’
* installing *source* package ‘arrow’ ...
** package ‘arrow’ successfully unpacked and MD5 sums checked
** using staged installation
*** pkg-config found.
*** Found libcurl and OpenSSL >= 3.0
*** Unable to retrieve libarrow for version 24.0.0 (linux-arm64)
*** Found local C++ source: 'tools/cpp'
*** Building libarrow from source
    For build options and troubleshooting, see the install guide:
    https://arrow.apache.org/docs/r/articles/install.html
**** cmake 3.31.2
**** arrow 
PKG_CFLAGS=-I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON
PKG_LIBS=-L/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/lib -L/usr/lib/lib/aarch64-linux-gnu  -larrow_dataset -lparquet -larrow_acero -larrow_compute -larrow -larrow_bundled_dependencies -ldl -lz  
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++20
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c RTasks.cpp -o RTasks.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c altrep.cpp -o altrep.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c array.cpp -o array.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c array_to_vector.cpp -o array_to_vector.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c arraydata.cpp -o arraydata.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c arrowExports.cpp -o arrowExports.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c bridge.cpp -o bridge.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c buffer.cpp -o buffer.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c chunkedarray.cpp -o chunkedarray.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c compression.cpp -o compression.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c compute-exec.cpp -o compute-exec.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c compute.cpp -o compute.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c config.cpp -o config.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c csv.cpp -o csv.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c dataset.cpp -o dataset.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c datatype.cpp -o datatype.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c expression.cpp -o expression.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c extension-impl.cpp -o extension-impl.o
Terminated
* installing *source* package ‘dbplyr’ ...
** package ‘dbplyr’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c feather.cpp -o feather.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c field.cpp -o field.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c filesystem.cpp -o filesystem.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c io.cpp -o io.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c json.cpp -o json.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c memorypool.cpp -o memorypool.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c message.cpp -o message.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c parquet.cpp -o parquet.o
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c r_to_arrow.cpp -o r_to_arrow.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c recordbatch.cpp -o recordbatch.o
** testing if installed package can be loaded from final location
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c recordbatchreader.cpp -o recordbatchreader.o
** testing if installed package keeps a record of temporary installation path
* DONE (dbplyr)
* installing *source* package ‘lubridate’ ...
** package ‘lubridate’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
gcc -I"/usr/share/R/include" -DNDEBUG       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c datetime.c -o datetime.o
gcc -I"/usr/share/R/include" -DNDEBUG       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.c -o init.o
gcc -I"/usr/share/R/include" -DNDEBUG       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c period.c -o period.o
gcc -I"/usr/share/R/include" -DNDEBUG       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c tparse.c -o tparse.o
gcc -I"/usr/share/R/include" -DNDEBUG       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c utils.c -o utils.o
gcc -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o lubridate.so datetime.o init.o period.o tparse.o utils.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-lubridate/00new/lubridate/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c recordbatchwriter.cpp -o recordbatchwriter.o
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c safe-call-into-r-impl.cpp -o safe-call-into-r-impl.o
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c scalar.cpp -o scalar.o
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
g++ -std=gnu++20 -I"/usr/share/R/include" -DNDEBUG -I/tmp/Rtmp2AUdsg/R.INSTALL1bb1bd7a3fb1ab/arrow/libarrow/arrow-24.0.0/include -I/usr/lib/include -DARROW_DS_STATIC -DPARQUET_STATIC -DARROW_ACERO_STATIC -DARROW_COMPUTE_STATIC -DARROW_STATIC    -DARROW_R_WITH_PARQUET -DARROW_R_WITH_COMPUTE -DARROW_R_WITH_DATASET -DARROW_R_WITH_ACERO -DARROW_R_WITH_JSON -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c schema.cpp -o schema.o
** testing if installed package keeps a record of temporary installation path
* DONE (lubridate)
* installing *source* package ‘readxl’ ...
** package ‘readxl’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c cpp11.cpp -o cpp11.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c XlsWorkBook.cpp -o XlsWorkBook.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c XlsxWorkBook.cpp -o XlsxWorkBook.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c zip.cpp -o zip.o
make: *** [/usr/lib/R/etc/Makeconf:200: r_to_arrow.o] Terminated
make: *** Waiting for unfinished jobs....
make: *** [/usr/lib/R/etc/Makeconf:200: safe-call-into-r-impl.o] Terminated
make: *** [/usr/lib/R/etc/Makeconf:200: schema.o] Terminated
make: *** [/usr/lib/R/etc/Makeconf:200: scalar.o] Terminated
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c Read.cpp -o Read.o
gcc -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c cran.c -o cran.o
gcc -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c libxls/xlstool.c -o libxls/xlstool.o
gcc -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c libxls/endian.c -o libxls/endian.o
gcc -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c libxls/ole.c -o libxls/ole.o
gcc -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c libxls/xls.c -o libxls/xls.o
gcc -I"/usr/share/R/include" -DNDEBUG -Iunix -I. -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/progress/include'    -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c libxls/locale.c -o libxls/locale.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o readxl.so cpp11.o XlsWorkBook.o XlsxWorkBook.o zip.o Read.o cran.o libxls/xlstool.o libxls/endian.o libxls/ole.o libxls/xls.o libxls/locale.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-readxl/00new/readxl/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (readxl)
* installing *source* package ‘rvest’ ...
** package ‘rvest’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** demo
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (rvest)
ERROR: dependency ‘fs’ is not available for package ‘sass’
* removing ‘/home/ubuntu/R/library/sass’
ERROR: dependency ‘fs’ is not available for package ‘gargle’
* removing ‘/home/ubuntu/R/library/gargle’
ERROR: dependency ‘fs’ is not available for package ‘pkgload’
* removing ‘/home/ubuntu/R/library/pkgload’
ERROR: dependency ‘arrow’ is not available for package ‘feather’
* removing ‘/home/ubuntu/R/library/feather’
ERROR: dependency ‘sass’ is not available for package ‘bslib’
* removing ‘/home/ubuntu/R/library/bslib’
ERROR: dependency ‘gargle’ is not available for package ‘googledrive’
* removing ‘/home/ubuntu/R/library/googledrive’
ERROR: dependency ‘pkgload’ is not available for package ‘testthat’
* removing ‘/home/ubuntu/R/library/testthat’
ERROR: dependencies ‘gargle’, ‘googledrive’ are not available for package ‘googlesheets4’
* removing ‘/home/ubuntu/R/library/googlesheets4’
ERROR: dependency ‘bslib’ is not available for package ‘rmarkdown’
* removing ‘/home/ubuntu/R/library/rmarkdown’
ERROR: dependencies ‘fs’, ‘rmarkdown’ are not available for package ‘reprex’
* removing ‘/home/ubuntu/R/library/reprex’
ERROR: dependencies ‘googledrive’, ‘googlesheets4’, ‘reprex’ are not available for package ‘tidyverse’
* removing ‘/home/ubuntu/R/library/tidyverse’

The downloaded source packages are in
	‘/tmp/Rtmpo365kZ/downloaded_packages’
Installing: tidybayes
also installing the dependencies ‘htmlwidgets’, ‘miniUI’, ‘nloptr’, ‘shiny’, ‘colourpicker’, ‘DT’, ‘dygraphs’, ‘shinyjs’, ‘shinythemes’, ‘threejs’, ‘sass’, ‘fansi’, ‘s2’, ‘units’, ‘svUnit’, ‘pkgload’, ‘lme4’, ‘shinystan’, ‘bslib’, ‘bindr’, ‘tweenr’, ‘downlit’, ‘fs’, ‘httr2’, ‘whisker’, ‘sf’, ‘lpSolve’, ‘arrayhelpers’, ‘testthat’, ‘vdiffr’, ‘svglite’, ‘runjags’, ‘rjags’, ‘jagsUI’, ‘rstanarm’, ‘rmarkdown’, ‘ggrepel’, ‘bindrcpp’, ‘gganimate’, ‘gifski’, ‘png’, ‘pkgdown’, ‘transformr’

trying URL 'https://cloud.r-project.org/src/contrib/htmlwidgets_1.6.4.tar.gz'
Content type 'application/x-gzip' length 868895 bytes (848 KB)
==================================================
downloaded 848 KB

trying URL 'https://cloud.r-project.org/src/contrib/miniUI_0.1.2.tar.gz'
Content type 'application/x-gzip' length 100855 bytes (98 KB)
==================================================
downloaded 98 KB

trying URL 'https://cloud.r-project.org/src/contrib/nloptr_2.2.1.tar.gz'
Content type 'application/x-gzip' length 2253853 bytes (2.1 MB)
==================================================
downloaded 2.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/shiny_1.13.0.tar.gz'
Content type 'application/x-gzip' length 2712329 bytes (2.6 MB)
==================================================
downloaded 2.6 MB

trying URL 'https://cloud.r-project.org/src/contrib/colourpicker_1.3.0.tar.gz'
Content type 'application/x-gzip' length 1278560 bytes (1.2 MB)
==================================================
downloaded 1.2 MB

trying URL 'https://cloud.r-project.org/src/contrib/DT_0.34.0.tar.gz'
Content type 'application/x-gzip' length 1664306 bytes (1.6 MB)
==================================================
downloaded 1.6 MB

trying URL 'https://cloud.r-project.org/src/contrib/dygraphs_1.1.1.6.tar.gz'
Content type 'application/x-gzip' length 318939 bytes (311 KB)
==================================================
downloaded 311 KB

trying URL 'https://cloud.r-project.org/src/contrib/shinyjs_2.1.1.tar.gz'
Content type 'application/x-gzip' length 992492 bytes (969 KB)
==================================================
downloaded 969 KB

trying URL 'https://cloud.r-project.org/src/contrib/shinythemes_1.2.0.tar.gz'
Content type 'application/x-gzip' length 972144 bytes (949 KB)
==================================================
downloaded 949 KB

trying URL 'https://cloud.r-project.org/src/contrib/threejs_0.3.4.tar.gz'
Content type 'application/x-gzip' length 735513 bytes (718 KB)
==================================================
downloaded 718 KB

trying URL 'https://cloud.r-project.org/src/contrib/sass_0.4.10.tar.gz'
Content type 'application/x-gzip' length 3025163 bytes (2.9 MB)
==================================================
downloaded 2.9 MB

trying URL 'https://cloud.r-project.org/src/contrib/fansi_1.0.7.tar.gz'
Content type 'application/x-gzip' length 685932 bytes (669 KB)
==================================================
downloaded 669 KB

trying URL 'https://cloud.r-project.org/src/contrib/s2_1.1.9.tar.gz'
Content type 'application/x-gzip' length 2967364 bytes (2.8 MB)
==================================================
downloaded 2.8 MB

trying URL 'https://cloud.r-project.org/src/contrib/units_1.0-1.tar.gz'
Content type 'application/x-gzip' length 369348 bytes (360 KB)
==================================================
downloaded 360 KB

trying URL 'https://cloud.r-project.org/src/contrib/svUnit_1.0.8.tar.gz'
Content type 'application/x-gzip' length 958699 bytes (936 KB)
==================================================
downloaded 936 KB

trying URL 'https://cloud.r-project.org/src/contrib/pkgload_1.5.2.tar.gz'
Content type 'application/x-gzip' length 88118 bytes (86 KB)
==================================================
downloaded 86 KB

trying URL 'https://cloud.r-project.org/src/contrib/lme4_2.0-1.tar.gz'
Content type 'application/x-gzip' length 3701223 bytes (3.5 MB)
==================================================
downloaded 3.5 MB

trying URL 'https://cloud.r-project.org/src/contrib/shinystan_2.7.0.tar.gz'
Content type 'application/x-gzip' length 2385314 bytes (2.3 MB)
==================================================
downloaded 2.3 MB

trying URL 'https://cloud.r-project.org/src/contrib/bslib_0.10.0.tar.gz'
Content type 'application/x-gzip' length 5769350 bytes (5.5 MB)
==================================================
downloaded 5.5 MB

trying URL 'https://cloud.r-project.org/src/contrib/bindr_0.1.3.tar.gz'
Content type 'application/x-gzip' length 6427 bytes
==================================================
downloaded 6427 bytes

trying URL 'https://cloud.r-project.org/src/contrib/tweenr_2.0.3.tar.gz'
Content type 'application/x-gzip' length 584998 bytes (571 KB)
==================================================
downloaded 571 KB

trying URL 'https://cloud.r-project.org/src/contrib/downlit_0.4.5.tar.gz'
Content type 'application/x-gzip' length 37263 bytes (36 KB)
==================================================
downloaded 36 KB

trying URL 'https://cloud.r-project.org/src/contrib/fs_2.1.0.tar.gz'
Content type 'application/x-gzip' length 1471347 bytes (1.4 MB)
==================================================
downloaded 1.4 MB

trying URL 'https://cloud.r-project.org/src/contrib/httr2_1.2.2.tar.gz'
Content type 'application/x-gzip' length 277334 bytes (270 KB)
==================================================
downloaded 270 KB

trying URL 'https://cloud.r-project.org/src/contrib/whisker_0.4.1.tar.gz'
Content type 'application/x-gzip' length 28586 bytes (27 KB)
==================================================
downloaded 27 KB

trying URL 'https://cloud.r-project.org/src/contrib/sf_1.1-0.tar.gz'
Content type 'application/x-gzip' length 9876822 bytes (9.4 MB)
==================================================
downloaded 9.4 MB

trying URL 'https://cloud.r-project.org/src/contrib/lpSolve_5.6.23.tar.gz'
Content type 'application/x-gzip' length 467586 bytes (456 KB)
==================================================
downloaded 456 KB

trying URL 'https://cloud.r-project.org/src/contrib/arrayhelpers_1.1-0.tar.gz'
Content type 'application/x-gzip' length 18523 bytes (18 KB)
==================================================
downloaded 18 KB

trying URL 'https://cloud.r-project.org/src/contrib/testthat_3.3.2.tar.gz'
Content type 'application/x-gzip' length 834043 bytes (814 KB)
==================================================
downloaded 814 KB

trying URL 'https://cloud.r-project.org/src/contrib/vdiffr_1.0.9.tar.gz'
Content type 'application/x-gzip' length 102429 bytes (100 KB)
==================================================
downloaded 100 KB

trying URL 'https://cloud.r-project.org/src/contrib/svglite_2.2.2.tar.gz'
Content type 'application/x-gzip' length 125651 bytes (122 KB)
==================================================
downloaded 122 KB

trying URL 'https://cloud.r-project.org/src/contrib/runjags_2.2.2-5.tar.gz'
Content type 'application/x-gzip' length 1106856 bytes (1.1 MB)
==================================================
downloaded 1.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/rjags_4-17.tar.gz'
Content type 'application/x-gzip' length 76394 bytes (74 KB)
==================================================
downloaded 74 KB

trying URL 'https://cloud.r-project.org/src/contrib/jagsUI_1.6.3.tar.gz'
Content type 'application/x-gzip' length 1444707 bytes (1.4 MB)
==================================================
downloaded 1.4 MB

trying URL 'https://cloud.r-project.org/src/contrib/rstanarm_2.32.2.tar.gz'
Content type 'application/x-gzip' length 3997647 bytes (3.8 MB)
==================================================
downloaded 3.8 MB

trying URL 'https://cloud.r-project.org/src/contrib/rmarkdown_2.31.tar.gz'
Content type 'application/x-gzip' length 2199845 bytes (2.1 MB)
==================================================
downloaded 2.1 MB

trying URL 'https://cloud.r-project.org/src/contrib/ggrepel_0.9.8.tar.gz'
Content type 'application/x-gzip' length 151726 bytes (148 KB)
==================================================
downloaded 148 KB

trying URL 'https://cloud.r-project.org/src/contrib/bindrcpp_0.2.4.tar.gz'
Content type 'application/x-gzip' length 10455 bytes (10 KB)
==================================================
downloaded 10 KB

trying URL 'https://cloud.r-project.org/src/contrib/gganimate_1.0.11.tar.gz'
Content type 'application/x-gzip' length 4550597 bytes (4.3 MB)
==================================================
downloaded 4.3 MB

trying URL 'https://cloud.r-project.org/src/contrib/gifski_1.32.0-2.tar.gz'
Content type 'application/x-gzip' length 7188650 bytes (6.9 MB)
==================================================
downloaded 6.9 MB

trying URL 'https://cloud.r-project.org/src/contrib/png_0.1-9.tar.gz'
Content type 'application/x-gzip' length 24939 bytes (24 KB)
==================================================
downloaded 24 KB

trying URL 'https://cloud.r-project.org/src/contrib/pkgdown_2.2.0.tar.gz'
Content type 'application/x-gzip' length 1280630 bytes (1.2 MB)
==================================================
downloaded 1.2 MB

trying URL 'https://cloud.r-project.org/src/contrib/transformr_0.1.5.tar.gz'
Content type 'application/x-gzip' length 1937457 bytes (1.8 MB)
==================================================
downloaded 1.8 MB

trying URL 'https://cloud.r-project.org/src/contrib/tidybayes_3.0.7.tar.gz'
Content type 'application/x-gzip' length 3016472 bytes (2.9 MB)
==================================================
downloaded 2.9 MB

* installing *source* package ‘nloptr’ ...
** package ‘nloptr’ successfully unpacked and MD5 sums checked
** using staged installation
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ -std=gnu++17 accepts -g... yes
checking for g++ -std=gnu++17 option to enable C++11 features... none needed
checking how to run the C++ preprocessor... g++ -std=gnu++17 -E
checking whether the compiler supports GNU C++... (cached) yes
checking whether g++ -std=gnu++17 accepts -g... (cached) yes
checking for g++ -std=gnu++17 option to enable C++11 features... (cached) none needed
checking for pkg-config... /usr/bin/pkg-config
checking if pkg-config knows NLopt... no
checking for cmake... /usr/bin/cmake
using cmake via /usr/bin/cmake
using NLopt via local cmake build on aarch64
set CC=gcc
set CFLAGS= -fPIC -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3
set CXX=g++
set CXXFLAGS=-std=gnu++11 -fPIC -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3
set LDFLAGS=-Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro
-- The C compiler identification is GNU 13.3.0
-- The CXX compiler identification is GNU 13.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- NLopt version 2.10.0
-- Looking for getopt.h
-- Looking for getopt.h - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for time.h
-- Looking for time.h - found
-- Looking for sys/time.h
-- Looking for sys/time.h - found
-- Looking for getpid
-- Looking for getpid - found
-- Looking for syscall
-- Looking for syscall - found
-- Looking for isinf
-- Looking for isinf - found
-- Looking for isnan
-- Looking for isnan - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for qsort_r
-- Looking for qsort_r - found
-- Looking for time
-- Looking for time - found
-- Looking for copysign
-- Looking for copysign - found
-- Looking for getopt
-- Looking for getopt - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of uint32_t
-- Check size of uint32_t - done
-- Check size of unsigned int
-- Check size of unsigned int - done
-- Check size of unsigned long
-- Check size of unsigned long - done
-- Looking for sqrt in m
-- Looking for sqrt in m - found
-- Looking for fpclassify
-- Looking for fpclassify - TRUE
-- Performing Test HAVE_THREAD_LOCAL_STORAGE
-- Performing Test HAVE_THREAD_LOCAL_STORAGE - Success
-- Performing Test HAVE_THREAD_LOCAL_STORAGE
-- Performing Test HAVE_THREAD_LOCAL_STORAGE - Failed
-- Looking for __cplusplus
-- Looking for __cplusplus - found
-- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) 
-- Could NOT find Java (missing: Java_JAVA_EXECUTABLE Java_JAR_EXECUTABLE Java_JAVAC_EXECUTABLE Java_JAVAH_EXECUTABLE Java_JAVADOC_EXECUTABLE) (Required is at least version "1.5")
-- Configuring done (2.5s)
-- Generating done (0.0s)
-- Build files have been written to: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt-build
[  2%] Generating nlopt.hpp
[  2%] Built target generate-cpp
[  6%] Building C object CMakeFiles/nlopt.dir/src/algs/direct/direct_wrap.c.o
[  6%] Building C object CMakeFiles/nlopt.dir/src/algs/direct/DIRect.c.o
[  8%] Building C object CMakeFiles/nlopt.dir/src/algs/direct/DIRserial.c.o
[ 10%] Building C object CMakeFiles/nlopt.dir/src/algs/direct/DIRsubrout.c.o
[ 12%] Building C object CMakeFiles/nlopt.dir/src/algs/cdirect/cdirect.c.o
[ 14%] Building C object CMakeFiles/nlopt.dir/src/algs/cdirect/hybrid.c.o
[ 16%] Building C object CMakeFiles/nlopt.dir/src/algs/praxis/praxis.c.o
[ 18%] Building C object CMakeFiles/nlopt.dir/src/algs/crs/crs.c.o
[ 20%] Building C object CMakeFiles/nlopt.dir/src/algs/mlsl/mlsl.c.o
[ 22%] Building C object CMakeFiles/nlopt.dir/src/algs/mma/mma.c.o
[ 24%] Building C object CMakeFiles/nlopt.dir/src/algs/mma/ccsa_quadratic.c.o
[ 26%] Building C object CMakeFiles/nlopt.dir/src/algs/cobyla/cobyla.c.o
[ 28%] Building C object CMakeFiles/nlopt.dir/src/algs/newuoa/newuoa.c.o
[ 30%] Building C object CMakeFiles/nlopt.dir/src/algs/neldermead/nldrmd.c.o
[ 32%] Building C object CMakeFiles/nlopt.dir/src/algs/neldermead/sbplx.c.o
[ 34%] Building C object CMakeFiles/nlopt.dir/src/algs/auglag/auglag.c.o
[ 36%] Building C object CMakeFiles/nlopt.dir/src/algs/bobyqa/bobyqa.c.o
[ 38%] Building C object CMakeFiles/nlopt.dir/src/algs/isres/isres.c.o
[ 40%] Building C object CMakeFiles/nlopt.dir/src/algs/slsqp/slsqp.c.o
[ 42%] Building C object CMakeFiles/nlopt.dir/src/algs/esch/esch.c.o
[ 44%] Building C object CMakeFiles/nlopt.dir/src/api/general.c.o
[ 46%] Building C object CMakeFiles/nlopt.dir/src/api/options.c.o
[ 48%] Building C object CMakeFiles/nlopt.dir/src/api/optimize.c.o
[ 51%] Building C object CMakeFiles/nlopt.dir/src/api/deprecated.c.o
[ 53%] Building C object CMakeFiles/nlopt.dir/src/api/f77api.c.o
[ 55%] Building C object CMakeFiles/nlopt.dir/src/util/mt19937ar.c.o
[ 57%] Building C object CMakeFiles/nlopt.dir/src/util/sobolseq.c.o
[ 59%] Building C object CMakeFiles/nlopt.dir/src/util/timer.c.o
[ 61%] Building C object CMakeFiles/nlopt.dir/src/util/stop.c.o
[ 63%] Building C object CMakeFiles/nlopt.dir/src/util/redblack.c.o
[ 65%] Building C object CMakeFiles/nlopt.dir/src/util/qsort_r.c.o
[ 67%] Building C object CMakeFiles/nlopt.dir/src/util/rescale.c.o
[ 69%] Building C object CMakeFiles/nlopt.dir/src/algs/luksan/plis.c.o
[ 71%] Building C object CMakeFiles/nlopt.dir/src/algs/luksan/plip.c.o
[ 73%] Building C object CMakeFiles/nlopt.dir/src/algs/luksan/pnet.c.o
[ 75%] Building C object CMakeFiles/nlopt.dir/src/algs/luksan/mssubs.c.o
[ 77%] Building C object CMakeFiles/nlopt.dir/src/algs/luksan/pssubs.c.o
[ 79%] Building CXX object CMakeFiles/nlopt.dir/src/algs/stogo/global.cc.o
[ 81%] Building CXX object CMakeFiles/nlopt.dir/src/algs/stogo/linalg.cc.o
[ 83%] Building CXX object CMakeFiles/nlopt.dir/src/algs/stogo/local.cc.o
[ 85%] Building CXX object CMakeFiles/nlopt.dir/src/algs/stogo/stogo.cc.o
[ 87%] Building CXX object CMakeFiles/nlopt.dir/src/algs/stogo/tools.cc.o
[ 89%] Building CXX object CMakeFiles/nlopt.dir/src/algs/ags/evolvent.cc.o
[ 91%] Building CXX object CMakeFiles/nlopt.dir/src/algs/ags/solver.cc.o
[ 93%] Building CXX object CMakeFiles/nlopt.dir/src/algs/ags/local_optimizer.cc.o
[ 95%] Building CXX object CMakeFiles/nlopt.dir/src/algs/ags/ags.cc.o
[ 97%] Linking CXX static library libnlopt.a
[100%] Built target nlopt
[  2%] Built target generate-cpp
[100%] Built target nlopt
Install the project...
-- Install configuration: "Release"
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/lib/pkgconfig/nlopt.pc
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/include/nlopt.h
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/include/nlopt.hpp
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/lib/libnlopt.a
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/share/man/man3/nlopt.3
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/share/man/man3/nlopt_minimize.3
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/share/man/man3/nlopt_minimize_constrained.3
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/lib/cmake/nlopt/NLoptLibraryDepends.cmake
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/lib/cmake/nlopt/NLoptLibraryDepends-release.cmake
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/lib/cmake/nlopt/NLoptConfig.cmake
-- Installing: /tmp/RtmpeBdWW1/R.INSTALL1be51360864991/nloptr/src/nlopt/lib/cmake/nlopt/NLoptConfigVersion.cmake
Moving nlopt/lib to nlopt/lib
mv: cannot move 'nlopt/lib' to a subdirectory of itself, 'nlopt/lib/lib'
Copying headers found in src/nlopt/include into inst/include
configure: creating ./config.status
config.status: creating src/Makevars
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -Inlopt/include      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c dummy.cpp -o dummy.o
gcc -I"/usr/share/R/include" -DNDEBUG -Inlopt/include      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init_nloptr.c -o init_nloptr.o
gcc -I"/usr/share/R/include" -DNDEBUG -Inlopt/include      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c nloptr.c -o nloptr.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o nloptr.so dummy.o init_nloptr.o nloptr.o -llapack -lblas -lgfortran -lm nlopt/lib/libnlopt.a -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-nloptr/00new/nloptr/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (nloptr)
* installing *source* package ‘fansi’ ...
** package ‘fansi’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c assumptions.c -o assumptions.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c carry.c -o carry.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c has.c -o has.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.c -o init.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c nchar.c -o nchar.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c normalize.c -o normalize.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c read.c -o read.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c state.c -o state.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c strip.c -o strip.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c substr.c -o substr.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c tabs.c -o tabs.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c tohtml.c -o tohtml.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c trimws.c -o trimws.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c unhandled.c -o unhandled.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c utf8.c -o utf8.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c utils.c -o utils.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c width.c -o width.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c wrap.c -o wrap.o
gcc -I"/usr/share/R/include" -DNDEBUG      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c write.c -o write.o
gcc -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o fansi.so assumptions.o carry.o has.o init.o nchar.o normalize.o read.o state.o strip.o substr.o tabs.o tohtml.o trimws.o unhandled.o utf8.o utils.o width.o wrap.o write.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-fansi/00new/fansi/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** 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 (fansi)
* installing *source* package ‘s2’ ...
** package ‘s2’ successfully unpacked and MD5 sums checked
** using staged installation
Found OpenSSL pkg-config cflags and libs!
Testing compiler OpenSSL configuration using PKG_CFLAGS=
** Using PKG_CONFIG_PATH=:/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/pkgconfig
** Building abseil-cpp using cmake
Warning message:
In readRenviron("~/.R/Makevars") :
  file '/home/ubuntu/.R/Makevars' cannot be opened for reading
GNU Make 4.3
Built for aarch64-unknown-linux-gnu
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Using MAKE=make -j4
cmake version 3.28.3

CMake suite maintained and supported by Kitware (kitware.com/cmake).
Using CMAKE=/usr/bin/cmake
Using MAKE=make -j4
-- The CXX compiler identification is GNU 13.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17
-- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 - Success
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- Configuring done (0.5s)
-- Generating done (0.2s)
-- Build files have been written to: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/build/abseil-cpp
[  0%] Building CXX object absl/base/CMakeFiles/spinlock_wait.dir/internal/spinlock_wait.cc.o
[  0%] Building CXX object absl/base/CMakeFiles/log_severity.dir/log_severity.cc.o
[  0%] Building CXX object absl/base/CMakeFiles/strerror.dir/internal/strerror.cc.o
[  1%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_fixed.cc.o
[  2%] Linking CXX static library libabsl_spinlock_wait.a
[  2%] Built target spinlock_wait
[  2%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_format.cc.o
[  3%] Linking CXX static library libabsl_strerror.a
[  4%] Linking CXX static library libabsl_log_severity.a
[  4%] Built target strerror
[  5%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_if.cc.o
[  5%] Built target log_severity
[  6%] Building CXX object absl/numeric/CMakeFiles/int128.dir/int128.cc.o
[  6%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_impl.cc.o
[  7%] Building CXX object absl/profiling/CMakeFiles/exponential_biased.dir/internal/exponential_biased.cc.o
[  7%] Linking CXX static library libabsl_int128.a
[  7%] Built target int128
[  7%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_info.cc.o
[  7%] Linking CXX static library libabsl_exponential_biased.a
[  7%] Built target exponential_biased
[  8%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_libc.cc.o
[  9%] Building CXX object absl/time/CMakeFiles/civil_time.dir/internal/cctz/src/civil_time_detail.cc.o
[  9%] Building CXX object absl/debugging/CMakeFiles/leak_check.dir/leak_check.cc.o
[ 10%] Linking CXX static library libabsl_leak_check.a
[ 10%] Built target leak_check
[ 10%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_lookup.cc.o
[ 10%] Building CXX object absl/flags/CMakeFiles/flags_commandlineflag_internal.dir/internal/commandlineflag.cc.o
[ 10%] Linking CXX static library libabsl_flags_commandlineflag_internal.a
[ 10%] Built target flags_commandlineflag_internal
[ 11%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/time_zone_posix.cc.o
[ 11%] Linking CXX static library libabsl_civil_time.a
[ 11%] Built target civil_time
[ 11%] Building CXX object absl/time/CMakeFiles/time_zone.dir/internal/cctz/src/zone_info_source.cc.o
[ 12%] Building CXX object absl/log/CMakeFiles/log_internal_nullguard.dir/internal/nullguard.cc.o
[ 12%] Linking CXX static library libabsl_log_internal_nullguard.a
[ 12%] Built target log_internal_nullguard
[ 13%] Building CXX object absl/profiling/CMakeFiles/periodic_sampler.dir/internal/periodic_sampler.cc.o
[ 13%] Building CXX object absl/random/CMakeFiles/random_seed_gen_exception.dir/seed_gen_exception.cc.o
[ 13%] Linking CXX static library libabsl_periodic_sampler.a
[ 13%] Built target periodic_sampler
[ 13%] Building CXX object absl/random/CMakeFiles/random_internal_platform.dir/internal/randen_round_keys.cc.o
[ 14%] Linking CXX static library libabsl_random_internal_platform.a
[ 14%] Built target random_internal_platform
[ 15%] Building CXX object absl/random/CMakeFiles/random_internal_randen_hwaes_impl.dir/internal/randen_hwaes.cc.o
[ 15%] Building CXX object absl/base/CMakeFiles/raw_logging_internal.dir/internal/raw_logging.cc.o
[ 15%] Linking CXX static library libabsl_random_seed_gen_exception.a
[ 15%] Built target random_seed_gen_exception
[ 15%] Building CXX object absl/random/CMakeFiles/random_internal_randen_slow.dir/internal/randen_slow.cc.o
[ 15%] Linking CXX static library libabsl_raw_logging_internal.a
[ 15%] Built target raw_logging_internal
[ 15%] Building CXX object absl/base/CMakeFiles/base.dir/internal/cycleclock.cc.o
[ 16%] Building CXX object absl/base/CMakeFiles/base.dir/internal/spinlock.cc.o
[ 17%] Linking CXX static library libabsl_random_internal_randen_hwaes_impl.a
[ 18%] Linking CXX static library libabsl_time_zone.a
[ 18%] Built target random_internal_randen_hwaes_impl
[ 18%] Building CXX object absl/base/CMakeFiles/base.dir/internal/sysinfo.cc.o
[ 18%] Built target time_zone
[ 19%] Building CXX object absl/base/CMakeFiles/base.dir/internal/thread_identity.cc.o
[ 20%] Linking CXX static library libabsl_random_internal_randen_slow.a
[ 20%] Built target random_internal_randen_slow
[ 20%] Building CXX object absl/base/CMakeFiles/base.dir/internal/unscaledcycleclock.cc.o
[ 20%] Building CXX object absl/base/CMakeFiles/throw_delegate.dir/internal/throw_delegate.cc.o
[ 20%] Building CXX object absl/base/CMakeFiles/scoped_set_env.dir/internal/scoped_set_env.cc.o
[ 20%] Building CXX object absl/debugging/CMakeFiles/debugging_internal.dir/internal/address_is_readable.cc.o
[ 21%] Linking CXX static library libabsl_throw_delegate.a
[ 21%] Built target throw_delegate
[ 22%] Linking CXX static library libabsl_base.a
[ 23%] Building CXX object absl/debugging/CMakeFiles/debugging_internal.dir/internal/elf_mem_image.cc.o
[ 23%] Built target base
[ 23%] Building CXX object absl/debugging/CMakeFiles/debugging_internal.dir/internal/vdso_support.cc.o
[ 24%] Linking CXX static library libabsl_scoped_set_env.a
[ 24%] Built target scoped_set_env
[ 25%] Building CXX object absl/types/CMakeFiles/bad_variant_access.dir/bad_variant_access.cc.o
[ 25%] Building CXX object absl/hash/CMakeFiles/city.dir/internal/city.cc.o
[ 25%] Linking CXX static library libabsl_bad_variant_access.a
[ 25%] Built target bad_variant_access
[ 25%] Building CXX object absl/hash/CMakeFiles/low_level_hash.dir/internal/low_level_hash.cc.o
[ 26%] Building CXX object absl/types/CMakeFiles/bad_optional_access.dir/bad_optional_access.cc.o
[ 27%] Linking CXX static library libabsl_debugging_internal.a
[ 27%] Built target debugging_internal
[ 27%] Building CXX object absl/crc/CMakeFiles/crc_cpu_detect.dir/internal/cpu_detect.cc.o
[ 27%] Linking CXX static library libabsl_bad_optional_access.a
[ 27%] Built target bad_optional_access
[ 27%] Linking CXX static library libabsl_city.a
[ 28%] Building CXX object absl/strings/CMakeFiles/cordz_functions.dir/internal/cordz_functions.cc.o
[ 29%] Linking CXX static library libabsl_crc_cpu_detect.a
[ 29%] Built target city
[ 29%] Built target crc_cpu_detect
[ 29%] Building CXX object absl/log/CMakeFiles/log_internal_conditions.dir/internal/conditions.cc.o
[ 30%] Building CXX object absl/random/CMakeFiles/random_internal_randen_hwaes.dir/internal/randen_detect.cc.o
[ 30%] Linking CXX static library libabsl_low_level_hash.a
[ 30%] Linking CXX static library libabsl_random_internal_randen_hwaes.a
[ 30%] Built target low_level_hash
[ 30%] Built target random_internal_randen_hwaes
[ 30%] Building CXX object absl/types/CMakeFiles/bad_any_cast_impl.dir/bad_any_cast.cc.o
[ 31%] Building CXX object absl/base/CMakeFiles/malloc_internal.dir/internal/low_level_alloc.cc.o
[ 32%] Linking CXX static library libabsl_log_internal_conditions.a
[ 32%] Linking CXX static library libabsl_bad_any_cast_impl.a
[ 32%] Built target log_internal_conditions
[ 32%] Built target bad_any_cast_impl
[ 32%] Building CXX object absl/debugging/CMakeFiles/stacktrace.dir/stacktrace.cc.o
[ 32%] Building CXX object absl/strings/CMakeFiles/strings_internal.dir/internal/ostringstream.cc.o
[ 33%] Building CXX object absl/strings/CMakeFiles/strings_internal.dir/internal/utf8.cc.o
[ 33%] Linking CXX static library libabsl_cordz_functions.a
[ 33%] Building CXX object absl/strings/CMakeFiles/strings_internal.dir/internal/escaping.cc.o
[ 33%] Built target cordz_functions
[ 33%] Building CXX object absl/debugging/CMakeFiles/demangle_internal.dir/internal/demangle.cc.o
[ 34%] Linking CXX static library libabsl_stacktrace.a
[ 34%] Built target stacktrace
[ 34%] Building CXX object absl/strings/CMakeFiles/string_view.dir/string_view.cc.o
[ 34%] Linking CXX static library libabsl_malloc_internal.a
[ 34%] Built target malloc_internal
[ 34%] Building CXX object absl/crc/CMakeFiles/crc_internal.dir/internal/crc.cc.o
[ 34%] Linking CXX static library libabsl_string_view.a
[ 34%] Built target string_view
[ 35%] Building CXX object absl/crc/CMakeFiles/crc_internal.dir/internal/crc_x86_arm_combined.cc.o
[ 35%] Linking CXX static library libabsl_strings_internal.a
[ 35%] Built target strings_internal
[ 36%] Building CXX object absl/random/CMakeFiles/random_internal_randen.dir/internal/randen.cc.o
[ 36%] Linking CXX static library libabsl_demangle_internal.a
[ 36%] Built target demangle_internal
[ 37%] Building CXX object absl/strings/CMakeFiles/strings.dir/ascii.cc.o
[ 37%] Linking CXX static library libabsl_random_internal_randen.a
[ 37%] Built target random_internal_randen
[ 37%] Building CXX object absl/strings/CMakeFiles/strings.dir/charconv.cc.o
[ 38%] Building CXX object absl/synchronization/CMakeFiles/graphcycles_internal.dir/internal/graphcycles.cc.o
[ 38%] Linking CXX static library libabsl_crc_internal.a
[ 38%] Built target crc_internal
[ 39%] Building CXX object absl/strings/CMakeFiles/strings.dir/escaping.cc.o
[ 39%] Building CXX object absl/strings/CMakeFiles/strings.dir/internal/charconv_bigint.cc.o
[ 40%] Building CXX object absl/strings/CMakeFiles/strings.dir/internal/charconv_parse.cc.o
[ 40%] Linking CXX static library libabsl_graphcycles_internal.a
[ 40%] Built target graphcycles_internal
[ 40%] Building CXX object absl/strings/CMakeFiles/strings.dir/internal/damerau_levenshtein_distance.cc.o
[ 40%] Building CXX object absl/strings/CMakeFiles/strings.dir/internal/memutil.cc.o
[ 41%] Building CXX object absl/strings/CMakeFiles/strings.dir/internal/stringify_sink.cc.o
[ 41%] Building CXX object absl/strings/CMakeFiles/strings.dir/match.cc.o
[ 42%] Building CXX object absl/strings/CMakeFiles/strings.dir/numbers.cc.o
[ 42%] Building CXX object absl/strings/CMakeFiles/strings.dir/str_cat.cc.o
[ 42%] Building CXX object absl/strings/CMakeFiles/strings.dir/str_replace.cc.o
[ 43%] Building CXX object absl/strings/CMakeFiles/strings.dir/str_split.cc.o
[ 43%] Building CXX object absl/strings/CMakeFiles/strings.dir/substitute.cc.o
[ 44%] Linking CXX static library libabsl_strings.a
[ 44%] Built target strings
[ 45%] Building CXX object absl/hash/CMakeFiles/hash.dir/internal/hash.cc.o
[ 45%] Building CXX object absl/debugging/CMakeFiles/symbolize.dir/symbolize.cc.o
[ 45%] Building CXX object absl/time/CMakeFiles/time.dir/civil_time.cc.o
[ 45%] Building CXX object absl/strings/CMakeFiles/str_format_internal.dir/internal/str_format/arg.cc.o
[ 46%] Linking CXX static library libabsl_hash.a
[ 46%] Built target hash
[ 47%] Building CXX object absl/time/CMakeFiles/time.dir/clock.cc.o
[ 47%] Linking CXX static library libabsl_symbolize.a
[ 47%] Built target symbolize
[ 47%] Building CXX object absl/time/CMakeFiles/time.dir/duration.cc.o
[ 48%] Building CXX object absl/strings/CMakeFiles/str_format_internal.dir/internal/str_format/bind.cc.o
[ 48%] Building CXX object absl/flags/CMakeFiles/flags_commandlineflag.dir/commandlineflag.cc.o
[ 48%] Building CXX object absl/time/CMakeFiles/time.dir/format.cc.o
[ 49%] Linking CXX static library libabsl_flags_commandlineflag.a
[ 49%] Built target flags_commandlineflag
[ 49%] Building CXX object absl/strings/CMakeFiles/str_format_internal.dir/internal/str_format/extension.cc.o
[ 49%] Building CXX object absl/log/CMakeFiles/log_internal_proto.dir/internal/proto.cc.o
[ 50%] Building CXX object absl/time/CMakeFiles/time.dir/time.cc.o
[ 51%] Building CXX object absl/log/CMakeFiles/log_globals.dir/globals.cc.o
[ 51%] Building CXX object absl/strings/CMakeFiles/str_format_internal.dir/internal/str_format/float_conversion.cc.o
[ 52%] Linking CXX static library libabsl_log_internal_proto.a
[ 52%] Built target log_internal_proto
[ 53%] Building CXX object absl/strings/CMakeFiles/str_format_internal.dir/internal/str_format/output.cc.o
[ 53%] Linking CXX static library libabsl_time.a
[ 53%] Built target time
[ 54%] Building CXX object absl/random/CMakeFiles/random_distributions.dir/discrete_distribution.cc.o
[ 54%] Building CXX object absl/random/CMakeFiles/random_distributions.dir/gaussian_distribution.cc.o
[ 54%] Linking CXX static library libabsl_log_globals.a
[ 54%] Built target log_globals
[ 54%] Building CXX object absl/strings/CMakeFiles/str_format_internal.dir/internal/str_format/parser.cc.o
[ 54%] Building CXX object absl/random/CMakeFiles/random_internal_seed_material.dir/internal/seed_material.cc.o
[ 54%] Linking CXX static library libabsl_random_distributions.a
[ 54%] Built target random_distributions
[ 54%] Building CXX object absl/synchronization/CMakeFiles/kernel_timeout_internal.dir/internal/kernel_timeout.cc.o
[ 55%] Building CXX object absl/debugging/CMakeFiles/examine_stack.dir/internal/examine_stack.cc.o
[ 56%] Linking CXX static library libabsl_random_internal_seed_material.a
[ 56%] Built target random_internal_seed_material
[ 56%] Building CXX object absl/flags/CMakeFiles/flags_private_handle_accessor.dir/internal/private_handle_accessor.cc.o
[ 57%] Linking CXX static library libabsl_kernel_timeout_internal.a
[ 57%] Linking CXX static library libabsl_examine_stack.a
[ 57%] Built target kernel_timeout_internal
[ 57%] Built target examine_stack
[ 57%] Building CXX object absl/log/CMakeFiles/log_entry.dir/log_entry.cc.o
[ 57%] Building CXX object absl/log/CMakeFiles/log_internal_globals.dir/internal/globals.cc.o
[ 58%] Linking CXX static library libabsl_str_format_internal.a
[ 58%] Built target str_format_internal
[ 58%] Building CXX object absl/random/CMakeFiles/random_internal_pool_urbg.dir/internal/pool_urbg.cc.o
[ 59%] Linking CXX static library libabsl_flags_private_handle_accessor.a
[ 59%] Built target flags_private_handle_accessor
[ 60%] Building CXX object absl/random/CMakeFiles/random_internal_distribution_test_util.dir/internal/chi_square.cc.o
[ 60%] Linking CXX static library libabsl_log_internal_globals.a
[ 60%] Linking CXX static library libabsl_log_entry.a
[ 60%] Built target log_internal_globals
[ 61%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/barrier.cc.o
[ 61%] Built target log_entry
[ 61%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/blocking_counter.cc.o
[ 61%] Linking CXX static library libabsl_random_internal_pool_urbg.a
[ 61%] Built target random_internal_pool_urbg
[ 61%] Building CXX object absl/crc/CMakeFiles/crc32c.dir/crc32c.cc.o
[ 61%] Building CXX object absl/random/CMakeFiles/random_internal_distribution_test_util.dir/internal/distribution_test_util.cc.o
[ 62%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/create_thread_identity.cc.o
[ 62%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/futex_waiter.cc.o
[ 62%] Building CXX object absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o
[ 63%] Building CXX object absl/crc/CMakeFiles/crc32c.dir/internal/crc_memcpy_fallback.cc.o
[ 63%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/per_thread_sem.cc.o
[ 64%] Linking CXX static library libabsl_failure_signal_handler.a
[ 65%] Linking CXX static library libabsl_random_internal_distribution_test_util.a
[ 65%] Built target failure_signal_handler
[ 65%] Building CXX object absl/crc/CMakeFiles/crc32c.dir/internal/crc_memcpy_x86_64.cc.o
[ 65%] Built target random_internal_distribution_test_util
[ 66%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/pthread_waiter.cc.o
[ 66%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/sem_waiter.cc.o
[ 67%] Building CXX object absl/crc/CMakeFiles/crc32c.dir/internal/crc_non_temporal_memcpy.cc.o
[ 68%] Building CXX object absl/flags/CMakeFiles/flags_marshalling.dir/marshalling.cc.o
[ 69%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/stdcpp_waiter.cc.o
[ 69%] Building CXX object absl/log/CMakeFiles/log_internal_format.dir/internal/log_format.cc.o
[ 69%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/waiter_base.cc.o
[ 69%] Linking CXX static library libabsl_crc32c.a
[ 69%] Built target crc32c
[ 69%] Building CXX object absl/log/CMakeFiles/log_sink.dir/log_sink.cc.o
[ 70%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/internal/win32_waiter.cc.o
[ 70%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/notification.cc.o
[ 71%] Linking CXX static library libabsl_log_internal_format.a
[ 71%] Built target log_internal_format
[ 71%] Building CXX object absl/synchronization/CMakeFiles/synchronization.dir/mutex.cc.o
[ 72%] Linking CXX static library libabsl_log_sink.a
[ 72%] Built target log_sink
[ 73%] Building CXX object absl/log/CMakeFiles/log_initialize.dir/initialize.cc.o
[ 73%] Linking CXX static library libabsl_flags_marshalling.a
[ 73%] Built target flags_marshalling
[ 74%] Building CXX object absl/random/CMakeFiles/random_seed_sequences.dir/seed_sequences.cc.o
[ 74%] Linking CXX static library libabsl_log_initialize.a
[ 74%] Built target log_initialize
[ 74%] Building CXX object absl/crc/CMakeFiles/crc_cord_state.dir/internal/crc_cord_state.cc.o
[ 74%] Linking CXX static library libabsl_random_seed_sequences.a
[ 74%] Built target random_seed_sequences
[ 75%] Linking CXX static library libabsl_synchronization.a
[ 75%] Built target synchronization
[ 75%] Building CXX object absl/container/CMakeFiles/hashtablez_sampler.dir/internal/hashtablez_sampler.cc.o
[ 75%] Building CXX object absl/flags/CMakeFiles/flags_program_name.dir/internal/program_name.cc.o
[ 76%] Building CXX object absl/strings/CMakeFiles/cordz_handle.dir/internal/cordz_handle.cc.o
[ 77%] Linking CXX static library libabsl_flags_program_name.a
[ 77%] Built target flags_program_name
[ 79%] Linking CXX static library libabsl_crc_cord_state.a
[ 79%] Building CXX object absl/log/CMakeFiles/log_internal_log_sink_set.dir/internal/log_sink_set.cc.o
[ 79%] Built target crc_cord_state
[ 80%] Building CXX object absl/flags/CMakeFiles/flags_config.dir/usage_config.cc.o
[ 80%] Linking CXX static library libabsl_cordz_handle.a
[ 80%] Built target cordz_handle
[ 80%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_internal.cc.o
[ 81%] Building CXX object absl/container/CMakeFiles/hashtablez_sampler.dir/internal/hashtablez_sampler_force_weak_definition.cc.o
[ 81%] Linking CXX static library libabsl_log_internal_log_sink_set.a
[ 81%] Built target log_internal_log_sink_set
[ 82%] Building CXX object absl/log/CMakeFiles/log_internal_message.dir/internal/log_message.cc.o
[ 82%] Linking CXX static library libabsl_hashtablez_sampler.a
[ 82%] Built target hashtablez_sampler
[ 83%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_rep_btree.cc.o
[ 83%] Linking CXX static library libabsl_flags_config.a
[ 83%] Built target flags_config
[ 84%] Building CXX object absl/container/CMakeFiles/raw_hash_set.dir/internal/raw_hash_set.cc.o
[ 85%] Building CXX object absl/flags/CMakeFiles/flags_internal.dir/internal/flag.cc.o
[ 85%] Linking CXX static library libabsl_log_internal_message.a
[ 85%] Built target log_internal_message
[ 85%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_rep_btree_navigator.cc.o
[ 85%] Linking CXX static library libabsl_flags_internal.a
[ 85%] Linking CXX static library libabsl_raw_hash_set.a
[ 85%] Built target flags_internal
[ 85%] Building CXX object absl/log/CMakeFiles/log_internal_check_op.dir/internal/check_op.cc.o
[ 85%] Built target raw_hash_set
[ 86%] Building CXX object absl/log/CMakeFiles/die_if_null.dir/die_if_null.cc.o
[ 87%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_rep_btree_reader.cc.o
[ 87%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_rep_crc.cc.o
[ 88%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_rep_consume.cc.o
[ 88%] Linking CXX static library libabsl_die_if_null.a
[ 88%] Built target die_if_null
[ 88%] Building CXX object absl/strings/CMakeFiles/cord_internal.dir/internal/cord_rep_ring.cc.o
[ 89%] Linking CXX static library libabsl_log_internal_check_op.a
[ 89%] Built target log_internal_check_op
[ 89%] Linking CXX static library libabsl_cord_internal.a
[ 89%] Built target cord_internal
[ 90%] Building CXX object absl/strings/CMakeFiles/cordz_info.dir/internal/cordz_info.cc.o
[ 90%] Linking CXX static library libabsl_cordz_info.a
[ 90%] Built target cordz_info
[ 91%] Building CXX object absl/strings/CMakeFiles/cord.dir/cord.cc.o
[ 92%] Building CXX object absl/strings/CMakeFiles/cord.dir/cord_buffer.cc.o
[ 92%] Building CXX object absl/strings/CMakeFiles/cord.dir/cord_analysis.cc.o
[ 92%] Building CXX object absl/strings/CMakeFiles/cordz_sample_token.dir/internal/cordz_sample_token.cc.o
[ 93%] Linking CXX static library libabsl_cordz_sample_token.a
[ 93%] Built target cordz_sample_token
In file included from /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:53,
                 from /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.h:78,
                 from /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:15:
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::Pointer<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedData() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::pointer absl::s2_lts_20230802::InlinedVector<T, N, A>::data() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:345:65,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::ValueType<A>& absl::s2_lts_20230802::InlinedVector<T, N, A>::back() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:421:16,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1297:23,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:387:58: warning: ‘stack.absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Allocated::allocated_data’ may be used uninitialized [-Wmaybe-uninitialized]
  387 |   Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
      |                                                          ^~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1258:53: note: ‘stack’ declared here
 1258 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^~~~~
In function ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1299:14: warning: ‘indents.absl::s2_lts_20230802::InlinedVector<int, 47, std::allocator<int> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Data::inlined.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Inlined::inlined_data’ may be used uninitialized [-Wmaybe-uninitialized]
 1299 |       indent = indents.back();
      |       ~~~~~~~^~~~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1259:48: note: ‘indents’ declared here
 1259 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^~~~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::Pointer<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedData() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::pointer absl::s2_lts_20230802::InlinedVector<T, N, A>::data() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:345:65,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::ValueType<A>& absl::s2_lts_20230802::InlinedVector<T, N, A>::back() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:421:16,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1299:28,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:387:58: warning: ‘indents.absl::s2_lts_20230802::InlinedVector<int, 47, std::allocator<int> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Allocated::allocated_data’ may be used uninitialized [-Wmaybe-uninitialized]
  387 |   Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
      |                                                          ^~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1259:48: note: ‘indents’ declared here
 1259 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^~~~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::Pointer<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedData() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:387:58: warning: ‘indents.absl::s2_lts_20230802::InlinedVector<int, 47, std::allocator<int> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Allocated::allocated_data’ may be used uninitialized [-Wmaybe-uninitialized]
  387 |   Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
      |                                                          ^~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1259:48: note: ‘indents’ declared here
 1259 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^~~~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::SizeType<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedCapacity() const [with T = int; long unsigned int N = 47; A = std::allocator<int>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:408:28: warning: ‘indents.absl::s2_lts_20230802::InlinedVector<int, 47, std::allocator<int> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Allocated::allocated_capacity’ may be used uninitialized [-Wmaybe-uninitialized]
  408 |     return data_.allocated.allocated_capacity;
      |                            ^~~~~~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1259:48: note: ‘indents’ declared here
 1259 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^~~~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::Pointer<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedData() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:387:58: warning: ‘*(absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >*)((char*)&stack + offsetof(absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >,absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::metadata_.absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>::<unnamed>.absl::s2_lts_20230802::container_internal::internal_compressed_tuple::CompressedTupleImpl<absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>, absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>, true>::<unnamed>)).absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Allocated::allocated_data’ may be used uninitialized [-Wmaybe-uninitialized]
  387 |   Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
      |                                                          ^~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1258:53: note: ‘stack’ declared here
 1258 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::SizeType<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedCapacity() const [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:408:28: warning: ‘*(const absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >*)((char*)&stack + offsetof(absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >,absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::metadata_.absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>::<unnamed>.absl::s2_lts_20230802::container_internal::internal_compressed_tuple::CompressedTupleImpl<absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>, absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>, true>::<unnamed>)).absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Allocated::allocated_capacity’ may be used uninitialized [-Wmaybe-uninitialized]
  408 |     return data_.allocated.allocated_capacity;
      |                            ^~~~~~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1258:53: note: ‘stack’ declared here
 1258 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::Pointer<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedData() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:387:58: warning: ‘indents.absl::s2_lts_20230802::InlinedVector<int, 47, std::allocator<int> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Allocated::allocated_data’ may be used uninitialized [-Wmaybe-uninitialized]
  387 |   Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
      |                                                          ^~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1259:48: note: ‘indents’ declared here
 1259 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^~~~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::SizeType<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedCapacity() const [with T = int; long unsigned int N = 47; A = std::allocator<int>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = int; long unsigned int N = 47; A = std::allocator<int>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:408:28: warning: ‘indents.absl::s2_lts_20230802::InlinedVector<int, 47, std::allocator<int> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<int, 47, std::allocator<int> >::Allocated::allocated_capacity’ may be used uninitialized [-Wmaybe-uninitialized]
  408 |     return data_.allocated.allocated_capacity;
      |                            ^~~~~~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1259:48: note: ‘indents’ declared here
 1259 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^~~~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::Pointer<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedData() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:387:58: warning: ‘*(absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >*)((char*)&stack + offsetof(absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >,absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::metadata_.absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>::<unnamed>.absl::s2_lts_20230802::container_internal::internal_compressed_tuple::CompressedTupleImpl<absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>, absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>, true>::<unnamed>)).absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Allocated::allocated_data’ may be used uninitialized [-Wmaybe-uninitialized]
  387 |   Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
      |                                                          ^~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1258:53: note: ‘stack’ declared here
 1258 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::SizeType<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedCapacity() const [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 47; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘void absl::s2_lts_20230802::DumpNode(cord_internal::CordRep*, bool, std::ostream*, int)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1304:1,
    inlined from ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1309:11:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:408:28: warning: ‘*(const absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >*)((char*)&stack + offsetof(absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >,absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 47, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::metadata_.absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>::<unnamed>.absl::s2_lts_20230802::container_internal::internal_compressed_tuple::CompressedTupleImpl<absl::s2_lts_20230802::container_internal::CompressedTuple<std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>, long unsigned int>, absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>, true>::<unnamed>)).absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Allocated::allocated_capacity’ may be used uninitialized [-Wmaybe-uninitialized]
  408 |     return data_.allocated.allocated_capacity;
      |                            ^~~~~~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘std::string absl::s2_lts_20230802::ReportError(cord_internal::CordRep*, cord_internal::CordRep*)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1258:53: note: ‘stack’ declared here
 1258 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^~~~~
In member function ‘absl::s2_lts_20230802::inlined_vector_internal::SizeType<A> absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::GetAllocatedCapacity() const [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:526:35,
    inlined from ‘void absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::DeallocateIfAllocated() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:524:8,
    inlined from ‘absl::s2_lts_20230802::inlined_vector_internal::Storage<T, N, A>::~Storage() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:366:28,
    inlined from ‘absl::s2_lts_20230802::InlinedVector<T, N, A>::~InlinedVector() [with T = absl::s2_lts_20230802::cord_internal::CordRep*; long unsigned int N = 2; A = std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*>]’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/inlined_vector.h:296:21,
    inlined from ‘bool absl::s2_lts_20230802::VerifyNode(cord_internal::CordRep*, cord_internal::CordRep*, bool)’ at /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1352:1:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/container/internal/inlined_vector.h:408:28: warning: ‘worklist.absl::s2_lts_20230802::InlinedVector<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::storage_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::data_.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Data::allocated.absl::s2_lts_20230802::inlined_vector_internal::Storage<absl::s2_lts_20230802::cord_internal::CordRep*, 2, std::allocator<absl::s2_lts_20230802::cord_internal::CordRep*> >::Allocated::allocated_capacity’ may be used uninitialized [-Wmaybe-uninitialized]
  408 |     return data_.allocated.allocated_capacity;
      |                            ^~~~~~~~~~~~~~~~~~
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc: In function ‘bool absl::s2_lts_20230802::VerifyNode(cord_internal::CordRep*, cord_internal::CordRep*, bool)’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/vendor/abseil-cpp/absl/strings/cord.cc:1315:36: note: ‘worklist’ declared here
 1315 |   absl::InlinedVector<CordRep*, 2> worklist;
      |                                    ^~~~~~~~
[ 93%] Linking CXX static library libabsl_cord.a
[ 93%] Built target cord
[ 93%] Building CXX object absl/flags/CMakeFiles/flags_reflection.dir/reflection.cc.o
[ 93%] Building CXX object absl/status/CMakeFiles/status.dir/status_payload_printer.cc.o
[ 93%] Building CXX object absl/status/CMakeFiles/status.dir/status.cc.o
[ 94%] Linking CXX static library libabsl_status.a
[ 94%] Built target status
[ 94%] Building CXX object absl/status/CMakeFiles/statusor.dir/statusor.cc.o
[ 94%] Linking CXX static library libabsl_flags_reflection.a
[ 94%] Built target flags_reflection
[ 94%] Building CXX object absl/flags/CMakeFiles/flags.dir/flag.cc.o
[ 95%] Linking CXX static library libabsl_statusor.a
[ 95%] Built target statusor
[ 96%] Linking CXX static library libabsl_flags.a
[ 96%] Built target flags
[ 98%] Building CXX object absl/log/CMakeFiles/log_flags.dir/flags.cc.o
[ 98%] Building CXX object absl/flags/CMakeFiles/flags_usage_internal.dir/internal/usage.cc.o
[ 98%] Linking CXX static library libabsl_log_flags.a
[ 98%] Built target log_flags
[ 98%] Linking CXX static library libabsl_flags_usage_internal.a
[ 98%] Built target flags_usage_internal
[ 99%] Building CXX object absl/flags/CMakeFiles/flags_usage.dir/usage.cc.o
[ 99%] Linking CXX static library libabsl_flags_usage.a
[ 99%] Built target flags_usage
[ 99%] Building CXX object absl/flags/CMakeFiles/flags_parse.dir/parse.cc.o
[100%] Linking CXX static library libabsl_flags_parse.a
[100%] Built target flags_parse
-- Install configuration: "Release"
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/cmake/absl/abslTargets.cmake
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/cmake/absl/abslTargets-release.cmake
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/cmake/absl/abslConfig.cmake
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/cmake/absl/abslConfigVersion.cmake
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/time.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/clock.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/civil_time.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/get_current_time_chrono.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/test_util.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/get_current_time_posix.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/time_zone_libc.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/time_zone_if.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/time_zone_fixed.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/tzfile.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/time_zone_posix.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/time_zone_impl.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/src/time_zone_info.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/include
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/include/cctz
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/include/cctz/zone_info_source.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/include/cctz/time_zone.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/include/cctz/civil_time.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/time/internal/cctz/include/cctz/civil_time_detail.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/symbolize_emscripten.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/failure_signal_handler.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/leak_check.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/symbolize_unimplemented.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/symbolize_win32.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/symbolize_elf.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stack_consumption.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/examine_stack.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/elf_mem_image.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_x86-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/demangle.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_unimplemented-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_emscripten-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_riscv-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_win32-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/vdso_support.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_powerpc-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_aarch64-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/symbolize.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_arm-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/stacktrace_generic-inl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/internal/address_is_readable.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/symbolize.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/symbolize_darwin.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/debugging/stacktrace.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/meta
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/meta/type_traits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/bind_front.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/any_invocable.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/internal/any_invocable.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/internal/front_binder.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/internal/function_ref.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/functional/function_ref.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/algorithm
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/algorithm/container.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/algorithm/algorithm.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/crc32c.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc_internal.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc32c_inline.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc32c.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/non_temporal_arm_intrinsics.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/cpu_detect.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc_memcpy.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/non_temporal_memcpy.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc32_x86_arm_combined_simd.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/crc/internal/crc_cord_state.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/int128_have_intrinsic.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/bits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/internal/bits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/internal/representation.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/int128_no_intrinsic.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/numeric/int128.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/profiling
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/profiling/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/profiling/internal/sample_recorder.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/profiling/internal/periodic_sampler.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/profiling/internal/exponential_biased.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/bad_optional_access.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/variant.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/compare.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/span.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/optional.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/transform_args.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/variant.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/conformance_archetype.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/conformance_testing_helpers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/span.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/optional.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/parentheses.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/conformance_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/conformance_aliases.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/internal/conformance_profile.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/bad_variant_access.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/any.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/types/bad_any_cast.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/optimization.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/casts.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/thread_annotations.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/prefetch.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/const_init.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/options.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/log_severity.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/macros.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/call_once.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/dynamic_annotations.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/attributes.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/cycleclock_config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/exception_safety_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/cycleclock.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/unscaledcycleclock_config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/spinlock_linux.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/thread_identity.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/scoped_set_env.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/thread_annotations.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/tsan_mutex_interface.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/prefetch.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/strerror.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/raw_logging.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/unaligned_access.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/per_thread_tls.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/low_level_alloc.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/endian.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/atomic_hook.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/unscaledcycleclock.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/scheduling_mode.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/inline_variable.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/sysinfo.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/dynamic_annotations.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/low_level_scheduling.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/direct_mmap.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/fast_type_id.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/nullability_impl.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/invoke.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/spinlock_posix.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/identity.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/spinlock_wait.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/throw_delegate.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/pretty_function.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/hide_ptr.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/spinlock.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/spinlock_win32.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/spinlock_akaros.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/errno_saver.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/atomic_hook_test_helper.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/exception_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/internal/inline_variable_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/nullability.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/port.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/policy_checks.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/usage.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/usage_config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/declare.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/marshalling.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/parse.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/flag.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/usage.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/program_name.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/sequence_lock.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/flag_msvc.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/path_util.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/parse.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/flag.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/private_handle_accessor.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/registry.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/internal/commandlineflag.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/reflection.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/flags/commandlineflag.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/cleanup
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/cleanup/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/cleanup/internal/cleanup.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/cleanup/cleanup.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/numbers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/charconv.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/cord_test_helpers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/str_format.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/ascii.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/strip.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/str_replace.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/str_join.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/escaping.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/str_cat.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_btree_navigator.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/stringify_sink.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_update_scope.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/numbers_test_common.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/memutil.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/pow10_helper.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_btree_reader.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_crc.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_handle.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/charconv_bigint.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/stl_type_traits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_btree.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_internal.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_ring.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/string_constant.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_statistics.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_consume.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/bind.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/extension.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/checker.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/arg.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/constexpr_parser.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/float_conversion.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/output.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_format/parser.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_data_edge.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/escaping.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/damerau_levenshtein_distance.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_join_internal.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_flat.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/resize_uninitialized.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/str_split_internal.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_test_util.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cord_rep_ring_reader.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/charconv_parse.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_info.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/escaping_test_common.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_sample_token.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_functions.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/ostringstream.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/utf8.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/cordz_update_tracker.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/char_map.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/internal/has_absl_stringify.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/cord.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/match.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/substitute.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/str_split.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/cordz_test_helpers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/string_view.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/cord_analysis.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/strings/cord_buffer.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/memory
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/memory/memory.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/seed_sequences.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/discrete_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/bernoulli_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/mock_distributions.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/exponential_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/poisson_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/log_uniform_int_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/zipf_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/gaussian_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/distributions.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/beta_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/seed_gen_exception.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/uniform_int_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/mocking_bit_gen.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/bit_gen_ref.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/uniform_helper.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/randen_traits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/seed_material.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/sequence_urbg.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/salted_seed_seq.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/randen_engine.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/nonsecure_base.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/traits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/randen_detect.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/iostream_state_saver.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/mock_helpers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/distribution_caller.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/pool_urbg.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/explicit_seed_seq.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/randen_hwaes.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/platform.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/fastmath.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/distribution_test_util.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/randen.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/chi_square.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/mock_overload_set.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/nanobenchmark.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/generate_real.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/fast_uniform_bits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/pcg_engine.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/randen_slow.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/internal/wide_multiply.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/random.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/random/uniform_real_distribution.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/inlined_vector.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/node_hash_set.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/node_hash_map.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hash_policy_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_set_members_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/raw_hash_set.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hash_function_defaults.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_set_lookup_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/inlined_vector.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hashtable_debug.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_map_constructor_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hashtable_debug_hooks.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hash_generator_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_map_lookup_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/btree_container.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hash_policy_traits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/btree.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/node_slot_policy.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/tracked.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/layout.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/counting_allocator.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/raw_hash_map.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_map_members_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_set_modifiers_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/test_instance_tracker.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/common_policy_traits.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/common.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/hashtablez_sampler.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/compressed_tuple.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/container_memory.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_set_constructor_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/unordered_map_modifiers_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/btree_map.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/btree_set.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/flat_hash_map.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/btree_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/fixed_array.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/flat_hash_set.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/hash_testing.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/hash.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/internal/spy_hash_state.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/internal/city.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/internal/low_level_hash.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/internal/hash_test.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/hash/internal/hash.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status/statusor.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status/status.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status/internal/status_internal.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status/internal/statusor_internal.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/status/status_payload_printer.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/barrier.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/mutex.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/blocking_counter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/notification.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/waiter_base.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/win32_waiter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/pthread_waiter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/futex.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/futex_waiter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/sem_waiter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/create_thread_identity.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/kernel_timeout.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/per_thread_sem.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/waiter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/graphcycles.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/stdcpp_waiter.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/synchronization/internal/thread_pool.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/die_if_null.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/absl_log.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/scoped_mock_log.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/check.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/globals.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/log_entry.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/check_test_impl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/structured.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/absl_check.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/log_sink_registry.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/log_basic_test_impl.inc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/log.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/log_sink.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/log_impl.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/globals.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/check_impl.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/test_actions.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/check_op.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/structured.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/strip.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/append_truncated.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/log_sink_set.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/proto.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/voidify.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/nullguard.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/flags.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/test_helpers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/nullstream.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/config.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/conditions.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/log_format.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/log_message.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/internal/test_matchers.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/flags.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/initialize.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/log/log_streamer.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/utility
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/utility/utility.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/utility/internal
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/utility/internal/if_constexpr.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/base/options.h
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_atomic_hook.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_errno_saver.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_severity.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_severity.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_nullability.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_raw_logging_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_raw_logging_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_spinlock_wait.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_spinlock_wait.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_config.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_dynamic_annotations.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_core_headers.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_malloc_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_malloc_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_base_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_base.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_base.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_throw_delegate.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_throw_delegate.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_pretty_function.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_endian.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_scoped_set_env.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_scoped_set_env.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_strerror.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_strerror.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_fast_type_id.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_prefetch.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_algorithm.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_algorithm_container.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cleanup_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cleanup.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_btree.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_compressed_tuple.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_fixed_array.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_inlined_vector_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_inlined_vector.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_counting_allocator.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flat_hash_map.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flat_hash_set.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_node_hash_map.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_node_hash_set.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_container_memory.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_hash_function_defaults.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_hash_policy_traits.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_common_policy_traits.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_hashtablez_sampler.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_hashtablez_sampler.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_hashtable_debug.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_hashtable_debug_hooks.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_node_slot_policy.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_raw_hash_map.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_container_common.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_raw_hash_set.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_raw_hash_set.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_layout.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_crc_cpu_detect.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_crc_cpu_detect.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_crc_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_crc_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_crc32c.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_crc32c.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_non_temporal_arm_intrinsics.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_non_temporal_memcpy.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_crc_cord_state.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_crc_cord_state.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_stacktrace.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_stacktrace.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_symbolize.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_symbolize.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_examine_stack.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_examine_stack.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_failure_signal_handler.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_failure_signal_handler.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_debugging_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_debugging_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_demangle_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_demangle_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_leak_check.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_leak_check.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_debugging.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_path_util.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_program_name.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_program_name.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_config.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_config.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_marshalling.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_marshalling.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_commandlineflag_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_commandlineflag_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_commandlineflag.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_commandlineflag.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_private_handle_accessor.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_private_handle_accessor.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_reflection.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_reflection.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_usage_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_usage_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_usage.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_usage.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_flags_parse.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_flags_parse.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_any_invocable.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_bind_front.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_function_ref.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_hash.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_hash.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_city.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_city.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_low_level_hash.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_low_level_hash.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_check_impl.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_check_op.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_check_op.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_conditions.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_conditions.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_config.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_flags.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_format.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_format.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_globals.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_globals.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_log_impl.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_proto.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_proto.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_message.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_message.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_log_sink_set.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_log_sink_set.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_nullguard.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_internal_nullguard.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_nullstream.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_strip.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_voidify.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_append_truncated.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_absl_check.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_absl_log.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_check.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_die_if_null.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_die_if_null.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_flags.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_flags.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_globals.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_globals.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_initialize.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_initialize.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_entry.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_entry.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_sink.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_log_sink.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_sink_registry.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_streamer.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_internal_structured.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_log_structured.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_memory.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_type_traits.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_meta.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_bits.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_int128.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_int128.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_numeric.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_numeric_representation.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_sample_recorder.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_exponential_biased.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_exponential_biased.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_periodic_sampler.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_periodic_sampler.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_random.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_bit_gen_ref.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_mock_helpers.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_distributions.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_distributions.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_seed_gen_exception.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_seed_gen_exception.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_seed_sequences.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_seed_sequences.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_traits.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_distribution_caller.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_fast_uniform_bits.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_seed_material.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_seed_material.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_pool_urbg.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_pool_urbg.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_salted_seed_seq.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_iostream_state_saver.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_generate_real.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_wide_multiply.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_fastmath.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_nonsecure_base.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_pcg_engine.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_randen_engine.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_platform.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_platform.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_randen.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_randen.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_randen_slow.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_randen_slow.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_randen_hwaes.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_randen_hwaes.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_randen_hwaes_impl.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_randen_hwaes_impl.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_distribution_test_util.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_random_internal_distribution_test_util.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_random_internal_uniform_helper.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_status.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_status.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_statusor.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_statusor.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_string_view.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_string_view.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_strings.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_strings.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_strings_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_strings_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_str_format.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_str_format_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_str_format_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cord_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_cord_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_update_tracker.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_functions.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_cordz_functions.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_statistics.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_handle.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_cordz_handle.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_info.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_cordz_info.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_sample_token.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_cordz_sample_token.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cordz_update_scope.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_cord.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_cord.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_graphcycles_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_graphcycles_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_kernel_timeout_internal.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_kernel_timeout_internal.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_synchronization.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_synchronization.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_time.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_time.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_civil_time.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_civil_time.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_time_zone.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_time_zone.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_any.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_bad_any_cast.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_bad_any_cast_impl.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_bad_any_cast_impl.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_span.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_optional.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_bad_optional_access.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_bad_optional_access.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_bad_variant_access.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/libabsl_bad_variant_access.a
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_variant.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_compare.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_utility.pc
-- Installing: /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib/pkgconfig/absl_if_constexpr.pc
** Done!
** Using PKG_CONFIG_PATH=tools/dist/lib/pkgconfig::/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/pkgconfig
Testing Abseil configuration using PKG_CFLAGS=-I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include 
Using PKG_LIBS=-L/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib -labsl_flags -labsl_flags_internal -labsl_flags_marshalling -labsl_flags_reflection -labsl_flags_private_handle_accessor -labsl_flags_commandlineflag -labsl_flags_commandlineflag_internal -labsl_flags_config -labsl_flags_program_name -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_log_internal_check_op -labsl_log_internal_conditions -labsl_log_internal_message -labsl_examine_stack -labsl_log_internal_format -labsl_log_internal_proto -labsl_log_internal_nullguard -labsl_log_internal_log_sink_set -labsl_log_internal_globals -labsl_log_globals -labsl_hash -labsl_city -labsl_bad_variant_access -labsl_low_level_hash -labsl_log_sink -labsl_log_entry -labsl_status -labsl_cord -labsl_cordz_info -labsl_cord_internal -labsl_cordz_functions -labsl_exponential_biased -labsl_cordz_handle -labsl_synchronization -labsl_graphcycles_internal -labsl_kernel_timeout_internal -labsl_time -labsl_civil_time -labsl_time_zone -labsl_crc_cord_state -labsl_crc32c -labsl_crc_internal -labsl_crc_cpu_detect -labsl_bad_optional_access -labsl_stacktrace -labsl_str_format_internal -labsl_strerror -labsl_symbolize -labsl_debugging_internal -labsl_demangle_internal -labsl_malloc_internal -labsl_strings -labsl_string_view -labsl_strings_internal -labsl_base -lrt -labsl_spinlock_wait -labsl_int128 -labsl_throw_delegate -labsl_raw_logging_internal -labsl_log_severity  -lssl -lcrypto 
Using PKG_CFLAGS=-I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include 
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++17
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c cpp-compat.cpp -o cpp-compat.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-accessors.cpp -o s2-accessors.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-bounds.cpp -o s2-bounds.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-cell.cpp -o s2-cell.o
In file included from s2/s2latlng_rect.h:29,
                 from s2-bounds.cpp:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/r2rect.h:26,
                 from s2/s2cell_id.h:42,
                 from s2-cell.cpp:8:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2latlng_rect.h:30:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from s2-cell.cpp:9:
s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from s2-cell.cpp:10:
s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s1chord_angle.h:31,
                 from s2/s2cap.h:31,
                 from s2-bounds.cpp:3:
../src/s2/s2pointutil.h: In function ‘S2Point S2::Origin()’:
../src/s2/s2pointutil.h:98:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 | inline S2Point Origin() {
      |                       ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-cell-union.cpp -o s2-cell-union.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cap.h:30,
                 from ../src/s2/s2convex_hull_query.h:25,
                 from s2geography/accessors-geog.h:4,
                 from s2geography.h:4,
                 from geography.h:7,
                 from geography-operator.h:7,
                 from s2-accessors.cpp:2:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from ../src/s2/s2convex_hull_query.h:26:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2latlng_rect.h:31,
                 from ../src/s2/s2convex_hull_query.h:26,
                 from s2geography/accessors-geog.h:4,
                 from s2geography.h:4,
                 from geography.h:7,
                 from s2-cell.cpp:12:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/mutable_s2shape_index.h:40,
                 from ../src/s2/s2loop.h:34,
                 from ../src/s2/s2convex_hull_query.h:27:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/mutable_s2shape_index.h:46,
                 from ../src/s2/s2loop.h:34,
                 from ../src/s2/s2convex_hull_query.h:27:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
In file included from ../src/s2/r2rect.h:26,
                 from s2/s2cell_id.h:42,
                 from s2-cell-union.cpp:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/mutable_s2shape_index.h:40,
                 from ../src/s2/s2builder.h:36,
                 from s2/s2boolean_operation.h:26,
                 from s2-options.h:7,
                 from s2-bounds.cpp:5:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2builder.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from s2-cell-union.cpp:3:
s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from s2-cell-union.cpp:4:
s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2region_coverer.h:31,
                 from s2geography/coverings.h:4,
                 from s2geography.h:8,
                 from s2-options.h:13:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2region_coverer.h:31,
                 from s2geography/coverings.h:4,
                 from s2geography.h:8:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/r2.h:22,
                 from s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_edge_query_base.h:42,
                 from ../src/s2/s2closest_edge_query.h:34,
                 from s2/s2shape_index_buffered_region.h:29,
                 from s2-cell-union.cpp:7:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2closest_edge_query.h:35:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
s2-cell.cpp: In function ‘Rcpp::NumericVector cpp_s2_cell_from_lnglat(Rcpp::List)’:
s2-cell.cpp:160:74: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |           S2LatLng ll = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized();
      |                                                                          ^
s2-cell.cpp: In member function ‘virtual SEXPREC* cpp_s2_cell_center(Rcpp::NumericVector)::Op::processCell(S2CellId, R_xlen_t)’:
s2-cell.cpp:357:58: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  357 |         return RGeography::MakeXPtr(RGeography::MakePoint(cellId.ToPoint()));
      |                                     ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
geography.h: In static member function ‘static std::unique_ptr<RGeography> RGeography::MakePoint(S2Point)’:
geography.h:41:38: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   41 |   static std::unique_ptr<RGeography> MakePoint(S2Point point) {
      |                                      ^~~~~~~~~
s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertexRaw(int) const’:
s2/s2cell.h:114:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                   ~~~~~~~~~~~~~^~~
s2/s2cell.h:114:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                                   ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                ^~~~~~
In file included from s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
s2-cell.cpp: In function ‘Rcpp::NumericVector cpp_s2_cell_from_lnglat(Rcpp::List)’:
s2-cell.cpp:160:46: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |           S2LatLng ll = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized();
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
In file included from ../src/s2/r2.h:22,
                 from s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from s2geography/aggregator.h:4,
                 from s2geography/accessors-geog.h:6:
s2geography/geography.h: In constructor ‘s2geography::PointGeography::PointGeography(S2Point)’:
s2geography/geography.h:74:3: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   74 |   PointGeography(S2Point point) { points_.push_back(point); }
      |   ^~~~~~~~~~~~~~
In file included from ../src/s2/s2distance_target.h:26:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
s2-cell.cpp: In function ‘Rcpp::List cpp_s2_cell_to_lnglat(Rcpp::NumericVector)’:
s2-cell.cpp:170:6: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  170 | List cpp_s2_cell_to_lnglat(NumericVector cellId) {
      |      ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-constructors-formatters.cpp -o s2-constructors-formatters.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-predicates.cpp -o s2-predicates.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-transformers.cpp -o s2-transformers.o
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2pointutil.h:25,
                 from s2-constructors-formatters.cpp:6:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from /home/ubuntu/R/library/Rcpp/include/RcppCommon.h:29,
                 from /home/ubuntu/R/library/Rcpp/include/Rcpp.h:27,
                 from geography.h:5,
                 from s2-constructors-formatters.cpp:9:
/home/ubuntu/R/library/Rcpp/include/Rcpp/r/check_r_headers.h: At global scope:
/home/ubuntu/R/library/Rcpp/include/Rcpp/r/check_r_headers.h:27:21: note: ‘#pragma message: R.h has been included before any Rcpp headers. This can lead to hard-to-debug errors, and is not necessary. See https://github.com/RcppCore/Rcpp/issues/1410’
   27 |     #pragma message "R.h has been included before any Rcpp headers. This can lead to hard-to-debug errors, and is not necessary. See https://github.com/RcppCore/Rcpp/issues/1410"
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/Rcpp/include/Rcpp/r/check_r_headers.h:35:21: note: ‘#pragma message: Rinternals.h has been included before any Rcpp headers. This can lead to hard-to-debug errors, and is not necessary. See https://github.com/RcppCore/Rcpp/issues/1410’
   35 |     #pragma message "Rinternals.h has been included before any Rcpp headers. This can lead to hard-to-debug errors, and is not necessary. See https://github.com/RcppCore/Rcpp/issues/1410"
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from s2/s2boolean_operation.h:26,
                 from s2-predicates.cpp:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from ../src/s2/s2convex_hull_query.h:26,
                 from s2geography/accessors-geog.h:4,
                 from s2geography.h:4,
                 from geography.h:7:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/mutable_s2shape_index.h:40,
                 from ../src/s2/s2loop.h:34,
                 from ../src/s2/s2convex_hull_query.h:27:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2shape_index_buffered_region.h:23,
                 from s2-transformers.cpp:2:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from s2/s2shape_index_buffered_region.h:26:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from s2/s2closest_edge_query.h:32,
                 from s2-predicates.cpp:3:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
s2/s2closest_edge_query.h: In member function ‘S2Point S2ClosestEdgeQuery::Project(const S2Point&, const Result&) const’:
s2/s2closest_edge_query.h:429:66: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  429 |                                            const Result& result) const {
      |                                                                  ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.cpp -o init.o
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_edge_query_base.h:42,
                 from ../src/s2/s2closest_edge_query.h:34,
                 from s2/s2shape_index_buffered_region.h:29:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2closest_edge_query.h:35:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2region_coverer.h:31,
                 from s2geography/coverings.h:4,
                 from s2geography.h:8:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’:
s2-constructors-formatters.cpp:888:43: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  888 |   R2Point Project(const S2Point& p) const {
      |                                           ^
s2-constructors-formatters.cpp: In member function ‘virtual S2Point OrthographicProjection::Unproject(const R2Point&) const’:
s2-constructors-formatters.cpp:895:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  895 |   S2Point Unproject(const R2Point& p) const {
      |                                             ^
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::FromLatLng(const S2LatLng&) const’:
s2-constructors-formatters.cpp:905:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  905 |   R2Point FromLatLng(const S2LatLng& ll) const {
      |                                                ^
s2-constructors-formatters.cpp: In member function ‘virtual S2LatLng OrthographicProjection::ToLatLng(const R2Point&) const’:
s2-constructors-formatters.cpp:909:45: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  909 |   S2LatLng ToLatLng(const R2Point& p) const {
      |                                             ^
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::wrap_distance() const’:
s2-constructors-formatters.cpp:913:33: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  913 |   R2Point wrap_distance() const {return R2Point(0, 0); }
      |                                 ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from s2geography.h:7:
s2geography/constructor.h: In member function ‘void s2geography::util::Constructor::finish_points()’:
s2geography/constructor.h:90:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   90 |         points_.push_back(options_.projection()->Unproject(R2Point(pt.x(), pt.y())));
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
s2-constructors-formatters.cpp: In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’:
s2-constructors-formatters.cpp:373:55: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                                                       ^
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’:
s2-constructors-formatters.cpp:889:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                                                        ^
s2-constructors-formatters.cpp:891:36: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  891 |     return R2Point(out.y(), out.z());
      |                                    ^
s2-constructors-formatters.cpp: In member function ‘virtual S2LatLng OrthographicProjection::ToLatLng(const R2Point&) const’:
s2-constructors-formatters.cpp:909:12: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  909 |   S2LatLng ToLatLng(const R2Point& p) const {
      |            ^~~~~~~~
s2-constructors-formatters.cpp:910:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  910 |     return S2LatLng(Unproject(p));
      |                     ~~~~~~~~~^~~
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::FromLatLng(const S2LatLng&) const’:
s2-constructors-formatters.cpp:905:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  905 |   R2Point FromLatLng(const S2LatLng& ll) const {
      |           ^~~~~~~~~~
s2-constructors-formatters.cpp:906:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  906 |     return Project(ll.ToPoint());
      |                    ~~~~~~~~~~^~
s2-constructors-formatters.cpp:906:32: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  906 |     return Project(ll.ToPoint());
      |                                ^
s2-constructors-formatters.cpp: In function ‘SEXPREC* c_s2_projection_orthographic(SEXP)’:
s2-constructors-formatters.cpp:948:69: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  948 |     S2LatLng::FromDegrees(REAL(centre_sexp)[1], REAL(centre_sexp)[0]);
      |                                                                     ^
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp: In function ‘SEXPREC* c_s2_projection_orthographic(SEXP)’:
s2-constructors-formatters.cpp:948:26: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  948 |     S2LatLng::FromDegrees(REAL(centre_sexp)[1], REAL(centre_sexp)[0]);
      |     ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
s2-predicates.cpp: In member function ‘virtual int cpp_s2_intersects_box(Rcpp::List, Rcpp::NumericVector, Rcpp::NumericVector, Rcpp::NumericVector, Rcpp::NumericVector, Rcpp::IntegerVector, Rcpp::List)::Op::processFeature(Rcpp::XPtr<RGeography>, R_xlen_t)’:
s2-predicates.cpp:213:70: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |       S2Point westEquator = S2LatLng::FromDegrees(0, xmin).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-predicates.cpp:213:81: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |       S2Point westEquator = S2LatLng::FromDegrees(0, xmin).Normalized().ToPoint();
      |                                                                                 ^
s2-predicates.cpp:214:70: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  214 |       S2Point eastEquator = S2LatLng::FromDegrees(0, xmax).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-predicates.cpp:214:81: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  214 |       S2Point eastEquator = S2LatLng::FromDegrees(0, xmax).Normalized().ToPoint();
      |                                                                                 ^
s2-predicates.cpp:226:46: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  226 |       S2LatLngRect rect(S2LatLng::FromDegrees(ymin, xmin), S2LatLng::FromDegrees(ymax, xmax));
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
In file included from ../src/s2/s2builder.h:38:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                            ~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromDegrees(double, double)’:
../src/s2/s2latlng.h:202:27: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  202 | inline constexpr S2LatLng S2LatLng::FromDegrees(double lat_degrees,
      |                           ^~~~~~~~
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::wrap_distance() const’:
s2-constructors-formatters.cpp:913:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  913 |   R2Point wrap_distance() const {return R2Point(0, 0); }
      |           ^~~~~~~~~~~~~
s2-constructors-formatters.cpp: In member function ‘virtual S2Point OrthographicProjection::Unproject(const R2Point&) const’:
s2-constructors-formatters.cpp:895:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  895 |   S2Point Unproject(const R2Point& p) const {
      |           ^~~~~~~~~
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’:
s2-constructors-formatters.cpp:888:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  888 |   R2Point Project(const S2Point& p) const {
      |           ^~~~~~~
s2-constructors-formatters.cpp:888:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:888:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2-constructors-formatters.cpp: In member function ‘virtual R2Point OrthographicProjection::FromLatLng(const S2LatLng&) const’:
s2-constructors-formatters.cpp:905:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  905 |   R2Point FromLatLng(const S2LatLng& ll) const {
      |           ^~~~~~~~~~
s2-constructors-formatters.cpp:905:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:905:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:906:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  906 |     return Project(ll.ToPoint());
      |                    ~~~~~~~~~~^~
s2-constructors-formatters.cpp:906:19: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  906 |     return Project(ll.ToPoint());
      |            ~~~~~~~^~~~~~~~~~~~~~
s2-constructors-formatters.cpp: In member function ‘virtual S2LatLng OrthographicProjection::ToLatLng(const R2Point&) const’:
s2-constructors-formatters.cpp:910:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  910 |     return S2LatLng(Unproject(p));
      |                     ~~~~~~~~~^~~
s2-constructors-formatters.cpp:909:12: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  909 |   S2LatLng ToLatLng(const R2Point& p) const {
      |            ^~~~~~~~
s2-constructors-formatters.cpp:909:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:909:12: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘virtual S2Point OrthographicProjection::Unproject(const R2Point&) const’,
    inlined from ‘virtual S2LatLng OrthographicProjection::ToLatLng(const R2Point&) const’ at s2-constructors-formatters.cpp:910:30:
s2-constructors-formatters.cpp:900:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  900 |     S2Point out = S2::Rotate(pp, y_axis_, -centre_.lat());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp: In member function ‘int TessellatingExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’:
s2-constructors-formatters.cpp:453:7: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  453 |   int last_coord_in_loop(const wk_meta_t* meta, const S2Point& point, wk_handler_t* handler) {
      |       ^~~~~~~~~~~~~~~~~~
s2-constructors-formatters.cpp:453:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:453:7: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int TessellatingExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:415:49,
    inlined from ‘int TessellatingExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:464:7:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int TessellatingExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int TessellatingExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:464:7:
s2-constructors-formatters.cpp:415:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  415 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c RcppExports.cpp -o RcppExports.o
In file included from ../src/s2/s2distance_target.h:26:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
s2-constructors-formatters.cpp: In function ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’:
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  481 | int handle_points(const s2geography::PointGeography& geog,
      |     ^~~~~~~~~~~~~
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:503:5:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:503:5:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:510:7:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:510:7:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
s2-constructors-formatters.cpp: In function ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’:
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  521 | int handle_polylines(const s2geography::PolylineGeography& geog,
      |     ^~~~~~~~~~~~~~~~
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:521:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:548:9:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:548:9:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::last_coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:391:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:550:9:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::last_coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:391:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:550:9:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:566:11:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:566:11:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::last_coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:391:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:568:11:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::last_coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:391:23,
    inlined from ‘int handle_polylines(const s2geography::PolylineGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:568:11:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
s2-constructors-formatters.cpp: In function ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = TessellatingExporter]’:
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  481 | int handle_points(const s2geography::PointGeography& geog,
      |     ^~~~~~~~~~~~~
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:481:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int TessellatingExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:415:49,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = TessellatingExporter]’ at s2-constructors-formatters.cpp:503:5:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int TessellatingExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = TessellatingExporter]’ at s2-constructors-formatters.cpp:503:5:
s2-constructors-formatters.cpp:415:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  415 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int TessellatingExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:415:49,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = TessellatingExporter]’ at s2-constructors-formatters.cpp:510:7:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int TessellatingExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int handle_points(const s2geography::PointGeography&, EdgeExporterT*, wk_handler_t*, uint32_t) [with EdgeExporterT = TessellatingExporter]’ at s2-constructors-formatters.cpp:510:7:
s2-constructors-formatters.cpp:415:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  415 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
s2-predicates.cpp: In member function ‘virtual int cpp_s2_intersects_box(Rcpp::List, Rcpp::NumericVector, Rcpp::NumericVector, Rcpp::NumericVector, Rcpp::NumericVector, Rcpp::IntegerVector, Rcpp::List)::Op::processFeature(Rcpp::XPtr<RGeography>, R_xlen_t)’:
s2-predicates.cpp:213:50: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |       S2Point westEquator = S2LatLng::FromDegrees(0, xmin).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2-transformers.cpp: In member function ‘virtual SEXPREC* cpp_s2_point_on_surface(Rcpp::List)::Op::processFeature(Rcpp::XPtr<RGeography>, R_xlen_t)’:
s2-transformers.cpp:232:81: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  232 |       S2Point result = s2geography::s2_point_on_surface(feature->Geog(), coverer);
      |                                                                                 ^
s2geography/constructor.h: In member function ‘void s2geography::util::Constructor::finish_points()’:
s2geography/constructor.h:90:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   90 |         points_.push_back(options_.projection()->Unproject(R2Point(pt.x(), pt.y())));
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
s2-constructors-formatters.cpp: In function ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’:
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  626 | int handle_shell(const S2Polygon& poly,
      |     ^~~~~~~~~~~~
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-constructors-formatters.cpp:626:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_loop_shell(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:595:5,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:631:3:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_loop_shell(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:595:5,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:631:3:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:396:23,
    inlined from ‘int handle_loop_shell(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:597:3,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:631:3:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:396:23,
    inlined from ‘int handle_loop_shell(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:597:3,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:631:3:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_loop_hole(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:617:5,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:637:7:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::coord_in_series(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:386:23,
    inlined from ‘int handle_loop_hole(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:617:5,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:637:7:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In member function ‘virtual R2Point OrthographicProjection::Project(const S2Point&) const’,
    inlined from ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’ at s2-constructors-formatters.cpp:373:49,
    inlined from ‘int SimpleExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:396:23,
    inlined from ‘int handle_loop_hole(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:619:3,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:637:7:
s2-constructors-formatters.cpp:889:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  889 |     S2Point out = S2::Rotate(p, z_axis_, -centre_.lng());
      |                   ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘int SimpleExporter::coord_point(const wk_meta_t*, const S2Point&, uint32_t, wk_handler_t*)’,
    inlined from ‘int SimpleExporter::last_coord_in_loop(const wk_meta_t*, const S2Point&, wk_handler_t*)’ at s2-constructors-formatters.cpp:396:23,
    inlined from ‘int handle_loop_hole(const S2Loop*, EdgeExporterT*, const wk_meta_t*, uint32_t, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:619:3,
    inlined from ‘int handle_shell(const S2Polygon&, EdgeExporterT*, const wk_meta_t*, int, wk_handler_t*) [with EdgeExporterT = SimpleExporter]’ at s2-constructors-formatters.cpp:637:7:
s2-constructors-formatters.cpp:373:49: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |     R2Point out = options_.projection()->Project(point);
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-geography.cpp -o s2-geography.o
s2-predicates.cpp:199:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  199 |     int processFeature(XPtr<RGeography> feature, R_xlen_t i) {
      |         ^~~~~~~~~~~~~~
s2-predicates.cpp:199:9: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-predicates.cpp:199:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-predicates.cpp:213:70: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |       S2Point westEquator = S2LatLng::FromDegrees(0, xmin).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-predicates.cpp:213:80: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |       S2Point westEquator = S2LatLng::FromDegrees(0, xmin).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-predicates.cpp:214:70: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  214 |       S2Point eastEquator = S2LatLng::FromDegrees(0, xmax).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-predicates.cpp:214:80: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  214 |       S2Point eastEquator = S2LatLng::FromDegrees(0, xmax).Normalized().ToPoint();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2latlng.h:32,
                 from s2-geography.cpp:2:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-lnglat.cpp -o s2-lnglat.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from s2/s2polyline.h:34,
                 from s2-geography.cpp:3:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2-matrix.cpp -o s2-matrix.o
In file included from ../src/s2/s2region_coverer.h:31,
                 from s2geography/coverings.h:4,
                 from s2geography.h:8,
                 from geography.h:7,
                 from s2-geography.cpp:6:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s1angle.h:28,
                 from s2/s2latlng.h:32,
                 from s2-lnglat.cpp:2:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/r2.h:22,
                 from s2/s2latlng.h:31:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from s2/s2polygon.h:43,
                 from s2-geography.cpp:4:
../src/s2/s2loop.h: In static member function ‘static std::vector<S2Point> S2Loop::kFull()’:
../src/s2/s2loop.h:698:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  698 |   return std::vector<S2Point>(1, kFullVertex());
      |                                  ~~~~~~~~~~~^~
In file included from ../src/s2/r2.h:22,
                 from s2/s2latlng.h:31:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from s2/s2boolean_operation.h:26,
                 from s2-matrix.cpp:6:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2-lnglat.cpp: In function ‘Rcpp::List s2_point_from_s2_lnglat(Rcpp::List)’:
s2-lnglat.cpp:43:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   43 |     item = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized().ToPoint();
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2-lnglat.cpp:43:60: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   43 |     item = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized().ToPoint();
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-lnglat.cpp:43:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   43 |     item = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized().ToPoint();
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromDegrees(double, double)’:
s2/s2latlng.h:202:27: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  202 | inline constexpr S2LatLng S2LatLng::FromDegrees(double lat_degrees,
      |                           ^~~~~~~~
s2-lnglat.cpp: In function ‘int s2_point_trans(R_xlen_t, const double*, double*, void*)’:
s2-lnglat.cpp:53:85: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     S2Point pt = S2LatLng::FromDegrees(xyzm_in[1], xyzm_in[0]).Normalized().ToPoint();
      |                                                                                     ^
s2-lnglat.cpp:53:74: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     S2Point pt = S2LatLng::FromDegrees(xyzm_in[1], xyzm_in[0]).Normalized().ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-lnglat.cpp:53:85: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     S2Point pt = S2LatLng::FromDegrees(xyzm_in[1], xyzm_in[0]).Normalized().ToPoint();
      |                                                                                     ^
s2-lnglat.cpp:53:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     S2Point pt = S2LatLng::FromDegrees(xyzm_in[1], xyzm_in[0]).Normalized().ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
s2-lnglat.cpp:52:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   52 | int s2_point_trans(R_xlen_t feature_id, const double* xyzm_in, double* xyzm_out, void* trans_data) {
      |     ^~~~~~~~~~~~~~
s2-lnglat.cpp:52:5: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-lnglat.cpp:52:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-lnglat.cpp:53:74: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     S2Point pt = S2LatLng::FromDegrees(xyzm_in[1], xyzm_in[0]).Normalized().ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-lnglat.cpp:53:84: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     S2Point pt = S2LatLng::FromDegrees(xyzm_in[1], xyzm_in[0]).Normalized().ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from s2/s2closest_edge_query.h:32,
                 from s2-matrix.cpp:7:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
s2/s2closest_edge_query.h: In member function ‘S2Point S2ClosestEdgeQuery::Project(const S2Point&, const Result&) const’:
s2/s2closest_edge_query.h:429:66: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  429 |                                            const Result& result) const {
      |                                                                  ^~~~~
gcc -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c wk-impl.c -o wk-impl.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/accessors-geog.cc -o s2geography/accessors-geog.o
s2-lnglat.cpp: In function ‘Rcpp::List s2_point_from_s2_lnglat(Rcpp::List)’:
s2-lnglat.cpp:31:6: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 | List s2_point_from_s2_lnglat(List s2_lnglat) {
      |      ^~~~~~~~~~~~~~~~~~~~~~~
s2-lnglat.cpp:31:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2-lnglat.cpp:43:60: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   43 |     item = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized().ToPoint();
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2-lnglat.cpp:43:70: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   43 |     item = S2LatLng::FromDegrees(lat[i], lng[i]).Normalized().ToPoint();
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/accessors.cc -o s2geography/accessors.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/build.cc -o s2geography/build.o
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cap.h:30,
                 from ../src/s2/s2convex_hull_query.h:25,
                 from s2geography/accessors-geog.h:4,
                 from s2geography/accessors-geog.cc:2:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from ../src/s2/s2convex_hull_query.h:26:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/mutable_s2shape_index.h:40,
                 from ../src/s2/s2loop.h:34,
                 from ../src/s2/s2convex_hull_query.h:27:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_s2point_vector_layer.h:27,
                 from s2geography/build.h:4,
                 from s2geography/build.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from s2geography/geography.h:4,
                 from s2geography/accessors.h:4,
                 from s2geography/accessors.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_s2point_vector_layer.h:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2geography/accessors-geog.cc: In function ‘S2Point s2geography::s2_centroid(const Geography&)’:
s2geography/accessors-geog.cc:12:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   12 | S2Point s2_centroid(const Geography& geog) {
      |         ^~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
s2geography/accessors.cc: In member function ‘S2Point s2coding::EncodedS2PointVector::operator[](int) const’:
s2geography/accessors.cc:273:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  273 | }  // namespace s2geography
      | ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
In file included from ../src/s2/s2builder.h:38:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/coverings.cc -o s2geography/coverings.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/distance.cc -o s2geography/distance.o
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2region_coverer.h:31,
                 from s2geography/coverings.h:4,
                 from s2geography/coverings.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/geography.cc -o s2geography/geography.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s1chord_angle.h:29,
                 from ../src/s2/s2cell.h:28:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from s2geography/geography.h:4,
                 from s2geography/distance.h:4,
                 from s2geography/distance.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/mutable_s2shape_index.h:46,
                 from ../src/s2/s2polygon.h:34,
                 from s2geography/geography.h:4,
                 from s2geography/coverings.h:6:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2closest_edge_query.h:32,
                 from s2geography/distance.cc:4:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
../src/s2/s2closest_edge_query.h: In member function ‘S2Point S2ClosestEdgeQuery::Project(const S2Point&, const Result&) const’:
../src/s2/s2closest_edge_query.h:429:66: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  429 |                                            const Result& result) const {
      |                                                                  ^~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from s2geography/geography.h:4,
                 from s2geography/geography.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2geography/coverings.cc: In function ‘S2Point s2geography::s2_point_on_surface(const Geography&, S2RegionCoverer&)’:
s2geography/coverings.cc:13:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   13 | S2Point s2_point_on_surface(const Geography& geog, S2RegionCoverer& coverer) {
      |         ^~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2geography/distance.cc: In function ‘S2Point s2geography::s2_closest_point(const ShapeIndexGeography&, const ShapeIndexGeography&)’:
s2geography/distance.cc:33:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   33 | S2Point s2_closest_point(const ShapeIndexGeography& geog1,
      |         ^~~~~~~~~~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2shape_index_region.h:29,
                 from s2geography/geography.cc:12:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/linear-referencing.cc -o s2geography/linear-referencing.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2shape_index_region.h:32:
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::MayIntersect(const S2Cell&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2shape_index_region.h:344:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 |     if (Contains(clipped, target.GetCenter())) return true;
      |                           ~~~~~~~~~~~~~~~~^~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:16: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                ^~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetCenter() const’:
../src/s2/s2cell.h:193:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  193 |   S2Point GetCenter() const { return GetCenterRaw().Normalize(); }
      |           ^~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2geography/predicates.cc -o s2geography/predicates.o
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:52: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/encoded_s2cell_id_vector.cc -o s2/encoded_s2cell_id_vector.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from s2geography/geography.h:4,
                 from s2geography/linear-referencing.h:4,
                 from s2geography/linear-referencing.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/encoded_s2point_vector.cc -o s2/encoded_s2point_vector.o
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2boolean_operation.h:26,
                 from s2geography/predicates.h:4,
                 from s2geography/predicates.cc:2:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/encoded_s2cell_id_vector.h:29,
                 from s2/encoded_s2cell_id_vector.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2geography/linear-referencing.cc: In function ‘double s2geography::s2_project_normalized(const PolylineGeography&, const S2Point&)’:
s2geography/linear-referencing.cc:17:76: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   17 |   S2Point point_on_line = geog1.Polylines()[0]->Project(point, &next_vertex);
      |                                                                            ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/encoded_s2point_vector.h:30,
                 from s2/encoded_s2point_vector.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from s2/encoded_s2point_vector.cc:36:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/encoded_s2shape_index.cc -o s2/encoded_s2shape_index.o
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/encoded_string_vector.cc -o s2/encoded_string_vector.o
s2/encoded_s2point_vector.cc: In member function ‘std::vector<S2Point> s2coding::EncodedS2PointVector::Decode() const’:
s2/encoded_s2point_vector.cc:142:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  142 |     points.push_back((*this)[i]);
      |                      ~~~~~~~~~^
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/encoded_s2point_vector.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/encoded_s2point_vector.cc:870:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  870 | }  // namespace s2coding
      | ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/id_set_lexicon.cc -o s2/id_set_lexicon.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/mutable_s2shape_index.cc -o s2/mutable_s2shape_index.o
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/encoded_s2cell_id_vector.h:29,
                 from ../src/s2/encoded_s2shape_index.h:30,
                 from s2/encoded_s2shape_index.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/r2rect.cc -o s2/r2rect.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from s2/r2rect.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
s2/r2rect.cc: In member function ‘R2Point R2Rect::Project(const R2Point&) const’:
s2/r2rect.cc:58:43: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 | R2Point R2Rect::Project(const R2Point& p) const {
      |                                           ^~~~~
s2/r2rect.cc: In member function ‘R2Rect R2Rect::Expanded(const R2Point&) const’:
s2/r2rect.cc:62:48: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 | R2Rect R2Rect::Expanded(const R2Point& margin) const {
      |                                                ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s1angle.cc -o s2/s1angle.o
s2/r2rect.cc: In member function ‘R2Point R2Rect::Project(const R2Point&) const’:
s2/r2rect.cc:58:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 | R2Point R2Rect::Project(const R2Point& p) const {
      |         ^~~~~~
s2/r2rect.cc: In member function ‘R2Rect R2Rect::Expanded(const R2Point&) const’:
s2/r2rect.cc:62:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 | R2Rect R2Rect::Expanded(const R2Point& margin) const {
      |        ^~~~~~
s2/r2rect.cc:63:42: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 |   R1Interval xx = x().Expanded(margin.x());
      |                                          ^
s2/r2rect.cc:65:52: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   65 |   if (xx.is_empty() || yy.is_empty()) return Empty();
      |                                                    ^
../src/s2/r1interval.h: In member function ‘R1Interval R1Interval::Expanded(double) const’:
../src/s2/r1interval.h:181:14: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  181 |   R1Interval Expanded(double margin) const {
      |              ^~~~~~~~
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:15: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |               ^~~~~~
../src/s2/r2rect.h:185:34: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  185 |   return R2Rect(R1Interval::Empty(), R1Interval::Empty());
      |                 ~~~~~~~~~~~~~~~~~^~
s2/r2rect.cc: In member function ‘R2Rect R2Rect::Union(const R2Rect&) const’:
s2/r2rect.cc:69:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   69 | R2Rect R2Rect::Union(const R2Rect& other) const {
      |        ^~~~~~
s2/r2rect.cc:70:26: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   return R2Rect(x().Union(other.x()), y().Union(other.y()));
      |                 ~~~~~~~~~^~~~~~~~~~~
s2/r2rect.cc: In member function ‘R2Rect R2Rect::Intersection(const R2Rect&) const’:
s2/r2rect.cc:73:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   73 | R2Rect R2Rect::Intersection(const R2Rect& other) const {
      |        ^~~~~~
s2/r2rect.cc:74:45: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   74 |   R1Interval xx = x().Intersection(other.x());
      |                                             ^
s2/r2rect.cc:76:52: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   76 |   if (xx.is_empty() || yy.is_empty()) return Empty();
      |                                                    ^
../src/s2/r1interval.h: In member function ‘R1Interval R1Interval::Intersection(const R1Interval&) const’:
../src/s2/r1interval.h:196:14: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  196 |   R1Interval Intersection(const R1Interval& y) const {
      |              ^~~~~~~~~~~~
s2/r2rect.cc: In function ‘std::ostream& operator<<(std::ostream&, const R2Rect&)’:
s2/r2rect.cc:86:29: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   86 |   return os << "[Lo" << r.lo() << ", Hi" << r.hi() << "]";
      |                         ~~~~^~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from s2/mutable_s2shape_index.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:185:55: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  185 |   return R2Rect(R1Interval::Empty(), R1Interval::Empty());
      |                                      ~~~~~~~~~~~~~~~~~^~
s2/r2rect.cc: In function ‘std::ostream& operator<<(std::ostream&, const R2Rect&)’:
s2/r2rect.cc:86:29: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   86 |   return os << "[Lo" << r.lo() << ", Hi" << r.hi() << "]";
      |                         ~~~~^~
s2/r2rect.cc: In static member function ‘static R2Rect R2Rect::FromCenterSize(const R2Point&, const R2Point&)’:
s2/r2rect.cc:25:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   25 | R2Rect R2Rect::FromCenterSize(const R2Point& center, const R2Point& size) {
      |        ^~~~~~
s2/r2rect.cc: In member function ‘R2Point R2Rect::Project(const R2Point&) const’:
s2/r2rect.cc:58:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 | R2Point R2Rect::Project(const R2Point& p) const {
      |         ^~~~~~
s2/r2rect.cc: In member function ‘R2Rect R2Rect::Expanded(const R2Point&) const’:
s2/r2rect.cc:62:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 | R2Rect R2Rect::Expanded(const R2Point& margin) const {
      |        ^~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s1chord_angle.cc -o s2/s1chord_angle.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_crosser.h:23,
                 from s2/mutable_s2shape_index.cc:48:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
s2/mutable_s2shape_index.cc: In static member function ‘static S2Point MutableS2ShapeIndex::InteriorTracker::Origin()’:
s2/mutable_s2shape_index.cc:369:54: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  369 | S2Point MutableS2ShapeIndex::InteriorTracker::Origin() {
      |                                                      ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s1interval.cc -o s2/s1interval.o
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/mutable_s2shape_index.cc: In constructor ‘MutableS2ShapeIndex::InteriorTracker::InteriorTracker()’:
s2/mutable_s2shape_index.cc:366:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  366 |     : b_(Origin()), next_cellid_(S2CellId::Begin(S2CellId::kMaxLevel)) {
      |       ^~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/mutable_s2shape_index.cc: In member function ‘std::unique_ptr<S2Shape> MutableS2ShapeIndex::Release(int)’:
s2/mutable_s2shape_index.cc:556:72: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  556 |         s2shapeutil::ContainsBruteForce(*shape, InteriorTracker::Origin());
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:13: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |             ^~~~
s2/mutable_s2shape_index.cc: In member function ‘void MutableS2ShapeIndex::FinishPartialShape(int)’:
s2/mutable_s2shape_index.cc:1123:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1123 |         tracker.MoveTo(pcell.GetEntryVertex());
      |                        ~~~~~~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/mutable_s2shape_index.cc: In member function ‘void MutableS2ShapeIndex::UpdateFaceEdges(int, const std::vector<FaceEdge>&, InteriorTracker*)’:
s2/mutable_s2shape_index.cc:1258:32: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1258 |   R2Rect bound = R2Rect::Empty();
      |                                ^
In file included from s2/s1interval.cc:18:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s1angle.h:28,
                 from s2/s1angle.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from s2/s1angle.cc:26:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:185:34: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  185 |   return R2Rect(R1Interval::Empty(), R1Interval::Empty());
      |                 ~~~~~~~~~~~~~~~~~^~
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::FromPointPair(const R2Point&, const R2Point&)’:
../src/s2/r2rect.h:188:15: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  188 | inline R2Rect R2Rect::FromPointPair(const R2Point& p1, const R2Point& p2) {
      |               ^~~~~~
../src/s2/r2rect.h:189:42: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  189 |   return R2Rect(R1Interval::FromPointPair(p1.x(), p2.x()),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
s2/mutable_s2shape_index.cc: In member function ‘void MutableS2ShapeIndex::AbsorbIndexCell(const S2PaddedCell&, const Iterator&, std::vector<const ClippedEdge*>*, InteriorTracker*, EdgeAllocator*)’:
s2/mutable_s2shape_index.cc:1599:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1599 |       tracker->MoveTo(pcell.GetEntryVertex());
      |                       ~~~~~~~~~~~~~~~~~~~~^~
s2/mutable_s2shape_index.cc:1672:20: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1672 |     clipped->bound = S2::GetClippedEdgeBound(face_edge.a, face_edge.b,
      |     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1673 |                                                      pcell.bound());
      |                                                      ~~~~~~~~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/mutable_s2shape_index.cc: In member function ‘bool MutableS2ShapeIndex::MakeIndexCell(const S2PaddedCell&, const std::vector<const ClippedEdge*>&, InteriorTracker*)’:
s2/mutable_s2shape_index.cc:1844:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1844 |       tracker->MoveTo(pcell.GetEntryVertex());
      |                       ~~~~~~~~~~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:490:18:   required from ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double; FloatType = double]’
s2/s1angle.cc:30:23:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2boolean_operation.cc -o s2/s2boolean_operation.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s1chord_angle.h:29,
                 from s2/s1chord_angle.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:185:55: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  185 |   return R2Rect(R1Interval::Empty(), R1Interval::Empty());
      |                                      ~~~~~~~~~~~~~~~~~^~
s2/mutable_s2shape_index.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/mutable_s2shape_index.cc:2026:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 2026 | }
      | ^
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |                    ~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2buffer_operation.cc -o s2/s2buffer_operation.o
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/mutable_s2shape_index.cc: In member function ‘int MutableS2ShapeIndex::GetEdgeMaxLevel(const S2Shape::Edge&) const’:
s2/mutable_s2shape_index.cc:1188:24: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1188 |       ((edge.v0 - edge.v1).Norm() *
      |                        ^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builder_graph.cc -o s2/s2builder_graph.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2buffer_operation.h:25,
                 from s2/s2buffer_operation.cc:49:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2boolean_operation.h:26,
                 from s2/s2boolean_operation.cc:67:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2builder_graph.h:31,
                 from s2/s2builder_graph.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2buffer_operation.h:27:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
s2/mutable_s2shape_index.cc: In member function ‘void MutableS2ShapeIndex::AbsorbIndexCell(const S2PaddedCell&, const Iterator&, std::vector<const ClippedEdge*>*, InteriorTracker*, EdgeAllocator*)’:
s2/mutable_s2shape_index.cc:1575:6: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1575 | void MutableS2ShapeIndex::AbsorbIndexCell(const S2PaddedCell& pcell,
      |      ^~~~~~~~~~~~~~~~~~~
s2/mutable_s2shape_index.cc:1575:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/mutable_s2shape_index.cc:1672:45: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1672 |     clipped->bound = S2::GetClippedEdgeBound(face_edge.a, face_edge.b,
      |                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
 1673 |                                                      pcell.bound());
      |                                                      ~~~~~~~~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/mutable_s2shape_index.cc: In member function ‘bool MutableS2ShapeIndex::MakeIndexCell(const S2PaddedCell&, const std::vector<const ClippedEdge*>&, InteriorTracker*)’:
s2/mutable_s2shape_index.cc:1693:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1693 | bool MutableS2ShapeIndex::MakeIndexCell(const S2PaddedCell& pcell,
      |      ^~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
s2/mutable_s2shape_index.cc: In member function ‘void MutableS2ShapeIndex::UpdateFaceEdges(int, const std::vector<FaceEdge>&, InteriorTracker*)’:
s2/mutable_s2shape_index.cc:1258:31: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1258 |   R2Rect bound = R2Rect::Empty();
      |                  ~~~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
s2/mutable_s2shape_index.cc: In member function ‘void MutableS2ShapeIndex::FinishPartialShape(int)’:
s2/mutable_s2shape_index.cc:1055:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1055 | void MutableS2ShapeIndex::FinishPartialShape(int shape_id) {
      |      ^~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::Init(std::unique_ptr<S2Builder::Layer>, const Options&)’:
s2/s2buffer_operation.cc:288:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  288 |   ref_point_ = S2::Origin();
      |   ~~~~~~~~~~~^~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddPoint(const S2Point&)’:
s2/s2buffer_operation.cc:469:60: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |       S2Point rotate_dir = point.CrossProd(start).Normalize();
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2buffer_operation.cc:471:65: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  471 |         S2Point dir = S2::GetPointOnRay(start, rotate_dir, angle);
      |                                                                 ^
../src/s2/util/math/vector.h: In member function ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:257:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  257 | inline S2Point GetPointOnRay(const S2Point& origin, const S2Point& dir,
      |                ^~~~~~~~~~~~~
../src/s2/s2edge_distances.h:272:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  272 |   return (cos(r) * origin + sin(r) * dir).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddVertexArc(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:499:61: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  499 |     S2Point dir = S2::GetPointOnRay(start, rotate_dir, angle);
      |                                                             ^
../src/s2/util/math/vector.h: In function ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = int; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2buffer_operation.h:26:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                            ~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::CloseVertexArc(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:506:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  506 |   AddOffsetVertex(S2::GetPointOnRay(v, end, abs_radius_));
      |                   ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddEdgeArc(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:522:39: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  522 |     S2Point rotate_dir = buffer_sign_ * a.CrossProd(ab_axis).Normalize();
      |                          ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc:525:57: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  525 |       S2Point p = S2::GetPointOnRay(a, rotate_dir, angle);
      |                                                         ^
s2/s2buffer_operation.cc: In member function ‘S2Point S2BufferOperation::GetEdgeAxis(const S2Point&, const S2Point&) const’:
s2/s2buffer_operation.cc:488:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  488 |   return buffer_sign_ * S2::RobustCrossProd(b, a).Normalize();
      |          ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc:488:60: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  488 |   return buffer_sign_ * S2::RobustCrossProd(b, a).Normalize();
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2buffer_operation.cc:488:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  488 |   return buffer_sign_ * S2::RobustCrossProd(b, a).Normalize();
      |          ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::CloseEdgeArc(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:535:38: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  535 |     AddOffsetVertex(S2::GetPointOnRay(b, GetEdgeAxis(a, b), abs_radius_));
      |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddStartCap(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:598:50: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  598 |       AddVertexArc(a, axis.CrossProd(a).Normalize(), axis);
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:133:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  133 |   friend S2Point operator-(const S2Point& pnt) {
      |                  ^~~~~~~~
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddEndCap(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:606:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  606 |   S2Point axis = GetEdgeAxis(a, b);
      |                                  ^
s2/s2buffer_operation.cc:618:48: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  618 |       S2Point end = b.CrossProd(axis).Normalize();
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from s2/s2buffer_operation.cc:64:
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
In file included from s2/s2boolean_operation.cc:94:
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2boolean_operation.cc: In member function ‘bool S2BooleanOperation::Impl::AddIndexCrossing(const ShapeEdge&, const ShapeEdge&, bool, IndexCrossings*)’:
s2/s2boolean_operation.cc:2209:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 2209 |         S2::GetIntersection(a.v0(), a.v1(), b.v0(), b.v1()));
      |         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddEndCap(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:613:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  613 |       AddVertexArc(b, axis, -axis);
      |                              ^~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builder.cc -o s2/s2builder.o
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddVertexArc(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:496:50: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  496 |   S2Point rotate_dir = buffer_sign_ * v.CrossProd(start).Normalize();
      |                                       ~~~~~~~~~~~^~~~~~~
s2/s2buffer_operation.cc:500:38: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  500 |     AddOffsetVertex(S2::GetPointOnRay(v, dir, abs_radius_));
      |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddEdgeArc(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:522:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  522 |     S2Point rotate_dir = buffer_sign_ * a.CrossProd(ab_axis).Normalize();
      |                                         ~~~~~~~~~~~^~~~~~~~~
s2/s2buffer_operation.cc:526:40: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  526 |       AddOffsetVertex(S2::GetPointOnRay(p, ab_axis, abs_radius_));
      |                       ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddEndCap(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:618:32: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  618 |       S2Point end = b.CrossProd(axis).Normalize();
      |                     ~~~~~~~~~~~^~~~~~
s2/s2buffer_operation.cc:605:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  605 | void S2BufferOperation::AddEndCap(const S2Point& a, const S2Point& b) {
      |      ^~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddStartCap(const S2Point&, const S2Point&)’:
s2/s2buffer_operation.cc:598:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  598 |       AddVertexArc(a, axis.CrossProd(a).Normalize(), axis);
      |                       ~~~~~~~~~~~~~~^~~
s2/s2buffer_operation.cc:582:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  582 | void S2BufferOperation::AddStartCap(const S2Point& a, const S2Point& b) {
      |      ^~~~~~~~~~~~~~~~~
s2/s2buffer_operation.cc: In member function ‘void S2BufferOperation::AddPoint(const S2Point&)’:
s2/s2buffer_operation.cc:469:43: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |       S2Point rotate_dir = point.CrossProd(start).Normalize();
      |                            ~~~~~~~~~~~~~~~^~~~~~~
s2/s2buffer_operation.cc:472:42: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  472 |         AddOffsetVertex(S2::GetPointOnRay(point, dir, abs_radius_));
      |                         ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_closed_set_normalizer.cc -o s2/s2builderutil_closed_set_normalizer.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from s2/s2builder.cc:71:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2closest_edge_query.h:32,
                 from s2/s2builder.cc:101:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
../src/s2/s2closest_edge_query.h: In member function ‘S2Point S2ClosestEdgeQuery::Project(const S2Point&, const Result&) const’:
../src/s2/s2closest_edge_query.h:429:66: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  429 |                                            const Result& result) const {
      |                                                                  ^~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2builderutil_closed_set_normalizer.h:25,
                 from s2/s2builderutil_closed_set_normalizer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_find_polygon_degeneracies.cc -o s2/s2builderutil_find_polygon_degeneracies.o
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2builder.cc: In member function ‘void S2Builder::MaybeAddExtraSites(InputEdgeId, const std::vector<int>&, const MutableS2ShapeIndex&, absl::s2_lts_20230802::flat_hash_set<int>*)’:
s2/s2builder.cc:986:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  986 |                        S2::Project(v1, a0, a1)).Normalize();
      |                                                           ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2builder.cc: In member function ‘S2Point S2Builder::GetSeparationSite(const S2Point&, const S2Point&, const S2Point&, InputEdgeId) const’:
s2/s2builder.cc:1094:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1094 | S2Point S2Builder::GetSeparationSite(const S2Point& site_to_avoid,
      |         ^~~~~~~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2builder.cc: In member function ‘S2Point S2Builder::GetCoverageEndpoint(const S2Point&, const S2Point&) const’:
s2/s2builder.cc:1135:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1135 | S2Point S2Builder::GetCoverageEndpoint(const S2Point& p, const S2Point& n)
      |         ^~~~~~~~~
s2/s2builder.cc:1156:28: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1156 |   S2Point nXp = n.CrossProd(p);
      |                 ~~~~~~~~~~~^~~
s2/s2builder.cc:1163:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1163 |   return (om + mr).Normalize();
      |                              ^
s2/s2builder.cc:1163:29: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1163 |   return (om + mr).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s2builder.h:38:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_get_snapped_winding_delta.cc -o s2/s2builderutil_get_snapped_winding_delta.o
s2/s2builder.cc: In member function ‘S2Point S2Builder::SnapSite(const S2Point&) const’:
s2/s2builder.cc:2233:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 2233 | }
      | ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_lax_polygon_layer.cc -o s2/s2builderutil_lax_polygon_layer.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24,
                 from s2/s2builderutil_find_polygon_degeneracies.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_lax_polygon_layer.h:42,
                 from s2/s2builderutil_lax_polygon_layer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2builderutil_find_polygon_degeneracies.cc: In member function ‘bool s2builderutil::{anonymous}::DegeneracyFinder::CrossingParity(VertexId, VertexId, bool) const’:
s2/s2builderutil_find_polygon_degeneracies.cc:262:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  262 |   S2Point p0_ref = S2::RefDir(p0);
      |                                 ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2builderutil_get_snapped_winding_delta.h:24,
                 from s2/s2builderutil_get_snapped_winding_delta.cc:50:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_lax_polygon_layer.h:43:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:30:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/btree_map.h: In instantiation of ‘static decltype (value.first) absl::s2_lts_20230802::container_internal::map_params<Key, Data, Compare, Alloc, TargetNodeSize, IsMulti>::key(const V&) [with V = std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>; Key = S2Point; Data = s2builderutil::{anonymous}::EdgeSnap; Compare = std::less<S2Point>; Alloc = std::allocator<std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap> >; int TargetNodeSize = 256; bool IsMulti = true; decltype (value.first) = const S2Point]’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/btree.h:1533:41:   required from ‘absl::s2_lts_20230802::container_internal::btree<Params>::iterator absl::s2_lts_20230802::container_internal::btree<Params>::insert_multi(ValueType&&) [with ValueType = std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>; Params = absl::s2_lts_20230802::container_internal::map_params<S2Point, s2builderutil::{anonymous}::EdgeSnap, std::less<S2Point>, std::allocator<std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap> >, 256, true>; iterator = absl::s2_lts_20230802::container_internal::btree_iterator<absl::s2_lts_20230802::container_internal::btree_node<absl::s2_lts_20230802::container_internal::map_params<S2Point, s2builderutil::{anonymous}::EdgeSnap, std::less<S2Point>, std::allocator<std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap> >, 256, true> >, std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>&, std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>*>]’
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/btree_container.h:651:36:   required from ‘absl::s2_lts_20230802::container_internal::btree_multiset_container<Tree>::iterator absl::s2_lts_20230802::container_internal::btree_multiset_container<Tree>::insert(value_type&&) [with Tree = absl::s2_lts_20230802::container_internal::btree<absl::s2_lts_20230802::container_internal::map_params<S2Point, s2builderutil::{anonymous}::EdgeSnap, std::less<S2Point>, std::allocator<std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap> >, 256, true> >; iterator = absl::s2_lts_20230802::container_internal::btree_iterator<absl::s2_lts_20230802::container_internal::btree_node<absl::s2_lts_20230802::container_internal::map_params<S2Point, s2builderutil::{anonymous}::EdgeSnap, std::less<S2Point>, std::allocator<std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap> >, 256, true> >, std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>&, std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>*>; value_type = std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>]’
s2/s2builderutil_get_snapped_winding_delta.cc:233:33:   required from here
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/btree_map.h:867:15: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  867 |   static auto key(const V &value) -> decltype(value.first) {
      |               ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
s2/s2builderutil_get_snapped_winding_delta.cc: In function ‘int s2builderutil::GetSnappedWindingDelta(const S2Point&, VertexId, absl::s2_lts_20230802::Span<const int>, const InputEdgeFilter&, const S2Builder&, const Graph&, S2Error*)’:
s2/s2builderutil_get_snapped_winding_delta.cc:282:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  282 |       S2Point z = S2::Ortho(ref_out);
      |                                    ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:133:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  133 |   friend S2Point operator-(const S2Point& pnt) {
      |                  ^~~~~~~~
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2builderutil_get_snapped_winding_delta.cc: In function ‘S2Point s2builderutil::{anonymous}::GetConnector(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2builderutil_get_snapped_winding_delta.cc:176:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  176 | S2Point GetConnector(const S2Point& b0, const S2Point& b1,
      |         ^~~~~~~~~~~~
s2/s2builderutil_get_snapped_winding_delta.cc:183:74: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  183 |   S2Point x = S2::RobustCrossProd(b0, b1).CrossProd(b1_snapped).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2builderutil_get_snapped_winding_delta.cc:183:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  183 |   S2Point x = S2::RobustCrossProd(b0, b1).CrossProd(b1_snapped).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~^~~~~~~~
s2/s2builderutil_get_snapped_winding_delta.cc:183:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  183 |   S2Point x = S2::RobustCrossProd(b0, b1).CrossProd(b1_snapped).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
s2/s2builderutil_get_snapped_winding_delta.cc:184:64: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 |   return (x.DotProd(S2::Interpolate(b0, b1, 0.5)) >= 0) ? x : -x;
      |                                                                ^
../src/s2/util/math/vector.h: In member function ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from /tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/btree_map.h:56:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/btree.h: In member function ‘absl::s2_lts_20230802::container_internal::btree<Params>::iterator absl::s2_lts_20230802::container_internal::btree<Params>::insert_multi(ValueType&&) [with ValueType = std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap>; Params = absl::s2_lts_20230802::container_internal::map_params<S2Point, s2builderutil::{anonymous}::EdgeSnap, std::less<S2Point>, std::allocator<std::pair<const S2Point, s2builderutil::{anonymous}::EdgeSnap> >, 256, true>]’:
/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include/absl/container/internal/btree.h:1533:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1533 |     return insert_multi(params_type::key(v), std::forward<ValueType>(v));
      |                         ~~~~~~~~~~~~~~~~^~~
s2/s2builderutil_get_snapped_winding_delta.cc: In function ‘S2Point s2builderutil::{anonymous}::GetConnector(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2builderutil_get_snapped_winding_delta.cc:183:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  183 |   S2Point x = S2::RobustCrossProd(b0, b1).CrossProd(b1_snapped).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
s2/s2builderutil_get_snapped_winding_delta.cc:176:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  176 | S2Point GetConnector(const S2Point& b0, const S2Point& b1,
      |         ^~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_lax_polyline_layer.cc -o s2/s2builderutil_lax_polyline_layer.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_s2point_vector_layer.cc -o s2/s2builderutil_s2point_vector_layer.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_lax_polyline_layer.h:27,
                 from s2/s2builderutil_lax_polyline_layer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_s2polygon_layer.cc -o s2/s2builderutil_s2polygon_layer.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_s2point_vector_layer.h:27,
                 from s2/s2builderutil_s2point_vector_layer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_lax_polyline_layer.h:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_s2point_vector_layer.h:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_s2polygon_layer.h:42,
                 from s2/s2builderutil_s2polygon_layer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_s2polyline_layer.cc -o s2/s2builderutil_s2polyline_layer.o
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_s2polygon_layer.h:43:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_s2polyline_vector_layer.cc -o s2/s2builderutil_s2polyline_vector_layer.o
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:47:
../src/s2/s2loop.h: In static member function ‘static std::vector<S2Point> S2Loop::kFull()’:
../src/s2/s2loop.h:698:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  698 |   return std::vector<S2Point>(1, kFullVertex());
      |                                  ~~~~~~~~~~~^~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_s2polyline_layer.h:27,
                 from s2/s2builderutil_s2polyline_layer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2builderutil_snap_functions.cc -o s2/s2builderutil_snap_functions.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builderutil_s2polyline_vector_layer.h:27,
                 from s2/s2builderutil_s2polyline_vector_layer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_s2polyline_layer.h:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2cap.cc -o s2/s2cap.o
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2builderutil_s2polyline_vector_layer.h:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2builderutil_snap_functions.h:23,
                 from s2/s2builderutil_snap_functions.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2cell_id.cc -o s2/s2cell_id.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2builderutil_snap_functions.h:24:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cap.h:30,
                 from s2/s2cap.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from s2/s2cap.cc:28:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from s2/s2cap.cc:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2cell.h:27,
                 from s2/s2cap.cc:32:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2edge_crossings.h:43,
                 from ../src/s2/s2edge_distances.h:31,
                 from s2/s2cap.cc:35:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2cell_index.cc -o s2/s2cell_index.o
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2/s2cap.cc: In member function ‘S2Point S2Cap::GetCentroid() const’:
s2/s2cap.cc:50:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   50 | S2Point S2Cap::GetCentroid() const {
      |         ^~~~~
s2/s2cap.cc:60:24: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   60 |   return r * GetArea() * center_;
      |          ~~~~~~~~~~~~~~^~~~~~~~~
s2/s2cap.cc: In member function ‘S2Cap S2Cap::Complement() const’:
s2/s2cap.cc:68:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   return S2Cap(-center_, S1ChordAngle::FromLength2(4 - radius_.length2()));
      |                ^~~~~~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2cap.h:31:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                            ~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2cap.cc: In member function ‘S2Cap S2Cap::Union(const S2Cap&) const’:
s2/s2cap.cc:135:73: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  135 |                            0.5 * (distance - this_radius + other_radius));
      |                                                                         ^
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
s2/s2cap.cc: In member function ‘bool S2Cap::Intersects(const S2Cell&, const S2Point*) const’:
s2/s2cap.cc:244:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  244 |     S2Point edge = cell.GetEdgeRaw(k);
      |                                     ^
s2/s2cap.cc:260:43: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 |     Vector3_d dir = edge.CrossProd(center_);
      |                                           ^
s2/s2cap.cc: In member function ‘virtual bool S2Cap::Contains(const S2Cell&) const’:
s2/s2cap.cc:274:17: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  274 |     vertices[k] = cell.GetVertex(k);
      |     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertexRaw(int) const’:
../src/s2/s2cell.h:114:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                   ~~~~~~~~~~~~~^~~
../src/s2/s2cell.h:114:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                                   ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                ^~~~~~
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2cap.cc: In member function ‘virtual bool S2Cap::MayIntersect(const S2Cell&) const’:
s2/s2cap.cc:287:17: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  287 |     vertices[k] = cell.GetVertex(k);
      |     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2cap.cc: In member function ‘S2Cap S2Cap::Complement() const’:
s2/s2cap.cc:68:17: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   return S2Cap(-center_, S1ChordAngle::FromLength2(4 - radius_.length2()));
      |                 ^~~~~~~
s2/s2cap.cc: In member function ‘S2Point S2Cap::GetCentroid() const’:
s2/s2cap.cc:60:26: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   60 |   return r * GetArea() * center_;
      |                          ^~~~~~~
s2/s2cap.cc:50:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   50 | S2Point S2Cap::GetCentroid() const {
      |         ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from s2/s2cell_id.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
s2/s2builderutil_snap_functions.cc: In member function ‘virtual S2Point s2builderutil::IdentitySnapFunction::SnapPoint(const S2Point&) const’:
s2/s2builderutil_snap_functions.cc:73:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   73 | S2Point IdentitySnapFunction::SnapPoint(const S2Point& point) const {
      |         ^~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2builderutil_snap_functions.cc: In member function ‘virtual S2Point s2builderutil::IntLatLngSnapFunction::SnapPoint(const S2Point&) const’:
s2/s2builderutil_snap_functions.cc:345:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  345 | S2Point IntLatLngSnapFunction::SnapPoint(const S2Point& point) const {
      |         ^~~~~~~~~~~~~~~~~~~~~
s2/s2builderutil_snap_functions.cc:350:31: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  350 |   return S2LatLng::FromDegrees(lat * to_degrees_, lng * to_degrees_).ToPoint();
      |          ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2builderutil_snap_functions.cc:350:78: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  350 |   return S2LatLng::FromDegrees(lat * to_degrees_, lng * to_degrees_).ToPoint();
      |                                                                              ^
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromDegrees(double, double)’:
../src/s2/s2latlng.h:202:27: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  202 | inline constexpr S2LatLng S2LatLng::FromDegrees(double lat_degrees,
      |                           ^~~~~~~~
s2/s2builderutil_snap_functions.cc: In member function ‘virtual S2Point s2builderutil::IdentitySnapFunction::SnapPoint(const S2Point&) const’:
s2/s2builderutil_snap_functions.cc:73:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   73 | S2Point IdentitySnapFunction::SnapPoint(const S2Point& point) const {
      |         ^~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2cell_union.cc -o s2/s2cell_union.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from s2/s2cell_id.cc:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
s2/s2cell_id.cc: In member function ‘S2Point S2CellId::ToPointRaw() const’:
s2/s2cell_id.cc:379:32: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  379 | S2Point S2CellId::ToPointRaw() const {
      |                                ^~~~~
s2/s2cell_id.cc: In member function ‘S2LatLng S2CellId::ToLatLng() const’:
s2/s2cell_id.cc:385:31: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  385 | S2LatLng S2CellId::ToLatLng() const {
      |                               ^~~~~
s2/s2cell_id.cc: In member function ‘R2Point S2CellId::GetCenterST() const’:
s2/s2cell_id.cc:389:33: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  389 | R2Point S2CellId::GetCenterST() const {
      |                                 ^~~~~
s2/s2cell_id.cc: In static member function ‘static R2Rect S2CellId::IJLevelToBoundUV(int*, int)’:
s2/s2cell_id.cc:402:55: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  402 | R2Rect S2CellId::IJLevelToBoundUV(int ij[2], int level) {
      |                                                       ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2cell.cc -o s2/s2cell.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:13: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |             ^~~~
s2/s2cell_id.cc: In constructor ‘S2CellId::S2CellId(const S2LatLng&)’:
s2/s2cell_id.cc:319:24: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  319 |   : S2CellId(ll.ToPoint()) {
      |              ~~~~~~~~~~^~
s2/s2cell_id.cc: In member function ‘S2LatLng S2CellId::ToLatLng() const’:
s2/s2cell_id.cc:385:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  385 | S2LatLng S2CellId::ToLatLng() const {
      |          ^~~~~~~~
s2/s2cell_id.cc:386:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  386 |   return S2LatLng(ToPointRaw());
      |                   ~~~~~~~~~~^~
s2/s2cell_id.cc: In member function ‘R2Point S2CellId::GetCenterST() const’:
s2/s2cell_id.cc:389:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  389 | R2Point S2CellId::GetCenterST() const {
      |         ^~~~~~~~
s2/s2cell_id.cc: In static member function ‘static R2Rect S2CellId::IJLevelToBoundUV(int*, int)’:
s2/s2cell_id.cc:402:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  402 | R2Rect S2CellId::IJLevelToBoundUV(int ij[2], int level) {
      |        ^~~~~~~~
s2/s2cell_id.cc: In member function ‘R2Rect S2CellId::GetBoundST() const’:
s2/s2cell_id.cc:416:44: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |   return R2Rect::FromCenterSize(GetCenterST(), R2Point(size, size));
      |                                 ~~~~~~~~~~~^~
s2/s2cell_id.cc:416:67: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |   return R2Rect::FromCenterSize(GetCenterST(), R2Point(size, size));
      |                                                                   ^
s2/s2cell_id.cc: In static member function ‘static S2CellId S2CellId::FromFaceIJWrap(int, int, int)’:
s2/s2cell_id.cc:494:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  494 |   face = S2::XYZtoFaceUV(S2::FaceUVtoXYZ(face, u, v), &u, &v);
      |                          ~~~~~~~~~~~~~~~^~~~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |                    ~~~^~
s2/s2cell_id.cc: In constructor ‘S2CellId::S2CellId(const S2LatLng&)’:
s2/s2cell_id.cc:318:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  318 | S2CellId::S2CellId(const S2LatLng& ll)
      | ^~~~~~~~
s2/s2cell_id.cc: In member function ‘S2LatLng S2CellId::ToLatLng() const’:
s2/s2cell_id.cc:385:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  385 | S2LatLng S2CellId::ToLatLng() const {
      |          ^~~~~~~~
s2/s2cell_id.cc:385:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2cell_id.cc:385:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2cell_id.cc:386:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  386 |   return S2LatLng(ToPointRaw());
      |                   ~~~~~~~~~~^~
s2/s2cell_id.cc: In member function ‘R2Point S2CellId::GetCenterST() const’:
s2/s2cell_id.cc:389:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  389 | R2Point S2CellId::GetCenterST() const {
      |         ^~~~~~~~
s2/s2cell_id.cc: In static member function ‘static R2Rect S2CellId::IJLevelToBoundUV(int*, int)’:
s2/s2cell_id.cc:402:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  402 | R2Rect S2CellId::IJLevelToBoundUV(int ij[2], int level) {
      |        ^~~~~~~~
s2/s2cell_id.cc: In member function ‘R2Rect S2CellId::GetBoundST() const’:
s2/s2cell_id.cc:414:8: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  414 | R2Rect S2CellId::GetBoundST() const {
      |        ^~~~~~~~
s2/s2cell_id.cc:414:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2cell_id.cc:414:8: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2cell_id.cc:414:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2cell_id.cc:416:44: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |   return R2Rect::FromCenterSize(GetCenterST(), R2Point(size, size));
      |                                 ~~~~~~~~~~~^~
s2/s2cell_id.cc:416:32: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |   return R2Rect::FromCenterSize(GetCenterST(), R2Point(size, size));
      |          ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell_id.cc: In static member function ‘static S2CellId S2CellId::FromFaceIJWrap(int, int, int)’:
s2/s2cell_id.cc:494:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  494 |   face = S2::XYZtoFaceUV(S2::FaceUVtoXYZ(face, u, v), &u, &v);
      |                          ~~~~~~~~~~~~~~~^~~~~~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2cell_index.h:31,
                 from s2/s2cell_index.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2centroids.cc -o s2/s2centroids.o
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from s2/s2cell.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_union.h:37,
                 from s2/s2cell_union.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2cell_union.h:38:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from s2/s2cell_union.cc:35:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31,
                 from s2/s2cell_union.cc:37:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
s2/s2cell_union.cc:238:35:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
s2/s2cell_union.cc:238:35:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
s2/s2cell_union.cc:238:35:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
s2/s2cell_union.cc:238:35:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s1chord_angle.h:29,
                 from ../src/s2/s2cell.h:28:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from s2/s2cell.cc:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43,
                 from ../src/s2/s2edge_crosser.h:23,
                 from s2/s2cell.cc:36:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
s2/s2cell_union.cc: In member function ‘virtual S2Cap S2CellUnion::GetCapBound() const’:
s2/s2cell_union.cc:238:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 |     centroid += area * id.ToPoint();
      |                        ~~~~~~~~~~^~
s2/s2cell_union.cc:238:22: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 |     centroid += area * id.ToPoint();
      |                 ~~~~~^~~~~~~~~~~~~~
s2/s2cell_union.cc:243:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  243 |     centroid = centroid.Normalize();
      |     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In function ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from s2/s2cell.cc:37:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
s2/s2cell.cc: In function ‘R2Rect OppositeUV(const R2Rect&)’:
s2/s2cell.cc:530:49: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  530 | inline static R2Rect OppositeUV(const R2Rect& uv) {
      |                                                 ^
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
s2/s2cell_union.cc: In member function ‘virtual S2Cap S2CellUnion::GetCapBound() const’:
s2/s2cell_union.cc:238:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 |     centroid += area * id.ToPoint();
      |                                   ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2cell.cc: In constructor ‘S2Cell::S2Cell(S2CellId)’:
s2/s2cell.cc:66:7: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   66 |   uv_ = S2CellId::IJLevelToBoundUV(ij, level_);
      |   ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc: In member function ‘S2Point S2Cell::GetEdgeRaw(int) const’:
s2/s2cell.cc:69:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   69 | S2Point S2Cell::GetEdgeRaw(int k) const {
      |         ^~~~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc: In member function ‘bool S2Cell::Subdivide(S2Cell*) const’:
s2/s2cell.cc:85:36: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   85 |   R2Point uv_mid = id_.GetCenterUV();
      |                                    ^
s2/s2cell.cc: In member function ‘S2Point S2Cell::GetCenterRaw() const’:
s2/s2cell.cc:109:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  109 | S2Point S2Cell::GetCenterRaw() const {
      |         ^~~~~~
s2/s2cell.cc: In member function ‘double S2Cell::ApproxArea() const’:
s2/s2cell.cc:125:31: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  124 |   double flat_area = 0.5 * (GetVertex(2) - GetVertex(0)).
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  125 |                      CrossProd(GetVertex(3) - GetVertex(1)).Norm();
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc:124:42: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  124 |   double flat_area = 0.5 * (GetVertex(2) - GetVertex(0)).
      |                            ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
s2/s2cell.cc:125:31: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  124 |   double flat_area = 0.5 * (GetVertex(2) - GetVertex(0)).
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  125 |                      CrossProd(GetVertex(3) - GetVertex(1)).Norm();
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertex(int) const’:
../src/s2/s2cell.h:112:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  112 |   S2Point GetVertex(int k) const { return GetVertexRaw(k).Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertexRaw(int) const’:
../src/s2/s2cell.h:114:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                   ~~~~~~~~~~~~~^~~
../src/s2/s2cell.h:114:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                                   ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                ^~~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2cell.cc: In member function ‘double S2Cell::ExactArea() const’:
s2/s2cell.cc:141:27: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  141 |   S2Point v0 = GetVertex(0);
      |                           ^
s2/s2cell.cc: In member function ‘virtual S2Cap S2Cell::GetCapBound() const’:
s2/s2cell.cc:162:56: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  162 |   S2Point center = S2::FaceUVtoXYZ(face_, uv_.GetCenter()).Normalize();
      |                                           ~~~~~~~~~~~~~^~
s2/s2cell.cc:162:35: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  162 |   S2Point center = S2::FaceUVtoXYZ(face_, uv_.GetCenter()).Normalize();
      |                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetCenter() const’:
../src/s2/r2rect.h:217:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  217 | inline R2Point R2Rect::GetCenter() const {
      |                ^~~~~~
s2/s2cell.cc: In member function ‘virtual S2LatLngRect S2Cell::GetRectBound() const’:
s2/s2cell.cc:195:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  195 |     int i = S2::GetUAxis(face_)[2] == 0 ? (u < 0) : (u > 0);
      |             ~~~~~~~~~~~~^~~~~~~
s2/s2cell.cc:198:69: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                GetLatitude(1-i, 1-j));
      |                                                                     ^
s2/s2cell.cc:200:68: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  200 |                                                GetLongitude(1-i, j));
      |                                                                    ^
s2/s2cell.cc:219:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  219 |         Expanded(S2LatLng::FromRadians(2 * DBL_EPSILON, 2 * DBL_EPSILON)).
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc:244:44: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  244 |                            S1Interval::Full());
      |                            ~~~~~~~~~~~~~~~~^~
s2/s2cell.cc:266:46: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   return bound.Expanded(S2LatLng::FromRadians(DBL_EPSILON, 0));
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
../src/s2/s2coords.h: In function ‘S2Point S2::GetUAxis(int)’:
../src/s2/s2coords.h:445:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  445 | inline S2Point GetUAxis(int face) {
      |                ^~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::FromPointPair(double, double)’:
../src/s2/r1interval.h:62:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 |   static R1Interval FromPointPair(double p1, double p2) {
      |                     ^~~~~~~~~~~~~
s2/s2cell.cc: In member function ‘double S2Cell::GetLongitude(int, int) const’:
s2/s2cell.cc:176:58: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  176 |   S2Point p = S2::FaceUVtoXYZ(face_, uv_[0][i], uv_[1][j]);
      |                                                          ^
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:197:27: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  197 | inline constexpr S2LatLng S2LatLng::FromRadians(double lat_radians,
      |                           ^~~~~~~~
s2/s2cell.cc: In member function ‘virtual bool S2Cell::Contains(const S2Point&) const’:
s2/s2cell.cc:300:22: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  300 |   return uv_.Expanded(DBL_EPSILON).Contains(uv);
      |          ~~~~~~~~~~~~^~~~~~~~~~~~~
s2/s2cell.cc: In member function ‘S1ChordAngle S2Cell::GetDistanceInternal(const S2Point&, bool) const’:
s2/s2cell.cc:366:54: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  366 |   S2Point target = S2::FaceXYZtoUVW(face_, target_xyz);
      |                                                      ^
s2/s2cell.cc: In member function ‘S1ChordAngle S2Cell::GetMaxDistance(const S2Cell&) const’:
s2/s2cell.cc:538:32: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  538 |       uv_.Intersects(OppositeUV(target.uv_))) {
      |                      ~~~~~~~~~~^~~~~~~~~~~~
s2/s2cell.cc:551:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  551 |     va[i] = GetVertex(i);
      |     ~~~~~~^~~~~~~~~~~~~~
s2/s2cell.cc: In function ‘R2Rect OppositeUV(const R2Rect&)’:
s2/s2cell.cc:530:22: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  530 | inline static R2Rect OppositeUV(const R2Rect& uv) {
      |                      ^~~~~~~~~~
s2/s2cell_union.cc:243:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  243 |     centroid = centroid.Normalize();
      |                ~~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
s2/s2cell.cc: In function ‘S2Point S2::GetVNorm(int, double)’:
s2/s2cell.cc:562:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  562 | }
      | ^
s2/s2cell.cc: In member function ‘virtual bool S2Cell::Contains(const S2Point&) const’:
s2/s2cell.cc:300:22: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  300 |   return uv_.Expanded(DBL_EPSILON).Contains(uv);
      |          ~~~~~~~~~~~~^~~~~~~~~~~~~
s2/s2cell.cc: In member function ‘virtual S2LatLngRect S2Cell::GetRectBound() const’:
s2/s2cell.cc:195:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  195 |     int i = S2::GetUAxis(face_)[2] == 0 ? (u < 0) : (u > 0);
      |             ~~~~~~~~~~~~^~~~~~~
s2/s2cell.cc:197:47: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  197 |     R1Interval lat = R1Interval::FromPointPair(GetLatitude(i, j),
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
  198 |                                                GetLatitude(1-i, 1-j));
      |                                                ~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc:219:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  219 |         Expanded(S2LatLng::FromRadians(2 * DBL_EPSILON, 2 * DBL_EPSILON)).
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc:244:44: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  244 |                            S1Interval::Full());
      |                            ~~~~~~~~~~~~~~~~^~
s2/s2cell.cc:266:46: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   return bound.Expanded(S2LatLng::FromRadians(DBL_EPSILON, 0));
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2cell.cc: In member function ‘virtual S2Cap S2Cell::GetCapBound() const’:
s2/s2cell.cc:162:35: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  162 |   S2Point center = S2::FaceUVtoXYZ(face_, uv_.GetCenter()).Normalize();
      |                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
s2/s2cell.cc:162:56: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  162 |   S2Point center = S2::FaceUVtoXYZ(face_, uv_.GetCenter()).Normalize();
      |                                           ~~~~~~~~~~~~~^~
s2/s2cell.cc: In member function ‘double S2Cell::ApproxArea() const’:
s2/s2cell.cc:125:58: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  125 |                      CrossProd(GetVertex(3) - GetVertex(1)).Norm();
      |                                                          ^
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2cell.cc: In member function ‘S1ChordAngle S2Cell::GetMaxDistance(const S2Point&) const’:
s2/s2cell.cc:438:50: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  438 |   return S1ChordAngle::Straight() - GetDistance(-target);
      |                                                  ^~~~~~
s2/s2cell.cc: In member function ‘virtual bool S2Cell::Contains(const S2Point&) const’:
s2/s2cell.cc:277:6: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  277 | bool S2Cell::Contains(const S2Point& p) const {
      |      ^~~~~~
s2/s2cell.cc: In member function ‘virtual S2Cap S2Cell::GetCapBound() const’:
s2/s2cell.cc:165:27: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  165 |     cap.AddPoint(GetVertex(k));
      |                  ~~~~~~~~~^~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2closest_cell_query.cc -o s2/s2closest_cell_query.o
s2/s2cell.cc: In member function ‘virtual S2LatLngRect S2Cell::GetRectBound() const’:
s2/s2cell.cc:180:14: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  180 | S2LatLngRect S2Cell::GetRectBound() const {
      |              ^~~~~~
s2/s2cell.cc: In constructor ‘S2Cell::S2Cell(S2CellId)’:
s2/s2cell.cc:60:1: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   60 | S2Cell::S2Cell(S2CellId id) {
      | ^~~~~~
s2/s2cell.cc: In member function ‘S2Point S2Cell::GetEdgeRaw(int) const’:
s2/s2cell.cc:69:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   69 | S2Point S2Cell::GetEdgeRaw(int k) const {
      |         ^~~~~~
s2/s2cell.cc: In member function ‘bool S2Cell::Subdivide(S2Cell*) const’:
s2/s2cell.cc:78:6: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 | bool S2Cell::Subdivide(S2Cell children[4]) const {
      |      ^~~~~~
s2/s2cell.cc: In member function ‘S2Point S2Cell::GetCenterRaw() const’:
s2/s2cell.cc:109:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  109 | S2Point S2Cell::GetCenterRaw() const {
      |         ^~~~~~
s2/s2cell.cc: In member function ‘double S2Cell::ApproxArea() const’:
s2/s2cell.cc:125:31: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  124 |   double flat_area = 0.5 * (GetVertex(2) - GetVertex(0)).
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  125 |                      CrossProd(GetVertex(3) - GetVertex(1)).Norm();
      |                      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In member function ‘S2Point S2Cell::GetVertex(int) const’,
    inlined from ‘double S2Cell::ApproxArea() const’ at s2/s2cell.cc:124:38:
../src/s2/s2cell.h:112:55: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  112 |   S2Point GetVertex(int k) const { return GetVertexRaw(k).Normalize(); }
      |                                           ~~~~~~~~~~~~^~~
In file included from ../src/s2/s2centroids.h:50,
                 from s2/s2centroids.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/s2cell.cc: In member function ‘S1ChordAngle S2Cell::GetMaxDistance(const S2Cell&) const’:
s2/s2cell.cc:538:32: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  538 |       uv_.Intersects(OppositeUV(target.uv_))) {
      |                      ~~~~~~~~~~^~~~~~~~~~~~
s2/s2cell.cc:552:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  552 |     vb[i] = target.GetVertex(i);
      |             ~~~~~~~~~~~~~~~~^~~
s2/s2centroids.cc: In function ‘S2Point S2::PlanarCentroid(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2centroids.cc:27:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   27 | S2Point PlanarCentroid(const S2Point& a, const S2Point& b, const S2Point& c) {
      |         ^~~~~~~~~~~~~~
s2/s2centroids.cc:28:17: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   28 |   return (1./3) * (a + b + c);
      |          ~~~~~~~^~~~~~~~~~~~~
s2/s2centroids.cc:28:26: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   28 |   return (1./3) * (a + b + c);
      |                   ~~~~~~~^~~~
s2/s2centroids.cc:28:17: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   28 |   return (1./3) * (a + b + c);
      |          ~~~~~~~^~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2centroids.cc: In function ‘S2Point S2::TrueCentroid(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2centroids.cc:31:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 | S2Point TrueCentroid(const S2Point& a, const S2Point& b, const S2Point& c) {
      |         ^~~~~~~~~~~~
s2/s2centroids.cc:68:14: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   return 0.5 * S2Point(y.CrossProd(z).DotProd(r),
      |          ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   69 |                        z.CrossProd(x).DotProd(r),
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~
   70 |                        x.CrossProd(y).DotProd(r));
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2centroids.cc: In function ‘S2Point S2::TrueCentroid(const S2Point&, const S2Point&)’:
s2/s2centroids.cc:73:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   73 | S2Point TrueCentroid(const S2Point& a, const S2Point& b) {
      |         ^~~~~~~~~~~~
s2/s2centroids.cc:82:28: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   82 |   return sqrt(sin2 / cos2) * vsum;  // Length == 2*sin(theta)
      |          ~~~~~~~~~~~~~~~~~~^~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2centroids.cc: In function ‘S2Point S2::PlanarCentroid(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2centroids.cc:28:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   28 |   return (1./3) * (a + b + c);
      |                            ^
s2/s2centroids.cc: In function ‘S2Point S2::TrueCentroid(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2centroids.cc:70:49: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |                        x.CrossProd(y).DotProd(r));
      |                                                 ^
s2/s2centroids.cc: In function ‘S2Point S2::TrueCentroid(const S2Point&, const S2Point&)’:
s2/s2centroids.cc:78:22: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   S2Point vsum = a + b;   // Length == 2*cos(theta)
      |                      ^
s2/s2centroids.cc:82:30: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   82 |   return sqrt(sin2 / cos2) * vsum;  // Length == 2*sin(theta)
      |                              ^~~~
s2/s2centroids.cc: In function ‘S2Point S2::PlanarCentroid(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2centroids.cc:27:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   27 | S2Point PlanarCentroid(const S2Point& a, const S2Point& b, const S2Point& c) {
      |         ^~~~~~~~~~~~~~
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘S2Point S2::TrueCentroid(const S2Point&, const S2Point&, const S2Point&)’ at s2/s2centroids.cc:41:27:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
s2/s2centroids.cc: In function ‘S2Point S2::TrueCentroid(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2centroids.cc:31:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 | S2Point TrueCentroid(const S2Point& a, const S2Point& b, const S2Point& c) {
      |         ^~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2closest_edge_query.cc -o s2/s2closest_edge_query.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2closest_point_query.cc -o s2/s2closest_point_query.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2contains_vertex_query.cc -o s2/s2contains_vertex_query.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2closest_cell_query.h:26,
                 from s2/s2closest_cell_query.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2closest_cell_query.h:28:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2contains_vertex_query.h:22,
                 from s2/s2contains_vertex_query.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2closest_edge_query.h:30,
                 from s2/s2closest_edge_query.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2closest_edge_query.h:32:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_cell_query_base.h:43,
                 from ../src/s2/s2closest_cell_query.h:32:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2min_distance_targets.h:36,
                 from ../src/s2/s2closest_cell_query.h:33:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2closest_point_query.h:26,
                 from s2/s2closest_point_query.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2closest_point_query.h:28:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
s2/s2contains_vertex_query.cc: In member function ‘int S2ContainsVertexQuery::ContainsSign()’:
s2/s2contains_vertex_query.cc:39:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   39 |   S2Point reference_dir = S2::RefDir(target_);
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_point_query_base.h:36,
                 from ../src/s2/s2closest_point_query.h:29:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2closest_point_query_base.h:37:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2convex_hull_query.cc -o s2/s2convex_hull_query.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_edge_query_base.h:42,
                 from ../src/s2/s2closest_edge_query.h:34:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2closest_edge_query.h:35:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2coords.cc -o s2/s2coords.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cap.h:30,
                 from ../src/s2/s2convex_hull_query.h:25,
                 from s2/s2convex_hull_query.cc:26:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from ../src/s2/s2convex_hull_query.h:26:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/mutable_s2shape_index.h:40,
                 from ../src/s2/s2loop.h:34,
                 from ../src/s2/s2convex_hull_query.h:27:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2crossing_edge_query.cc -o s2/s2crossing_edge_query.o
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
In file included from ../src/s2/s2coords.h:108,
                 from s2/s2coords.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2coords.h:106:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/s2coords.cc: In function ‘S2Point S2::FaceXYZtoUVW(int, const S2Point&)’:
s2/s2coords.cc:104:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  104 | S2Point FaceXYZtoUVW(int face, const S2Point& p) {
      |         ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:13: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |             ^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2coords.cc: In function ‘S2Point S2::FaceSiTitoXYZ(int, unsigned int, unsigned int)’:
s2/s2coords.cc:142:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  142 | S2Point FaceSiTitoXYZ(int face, unsigned int si, unsigned int ti) {
      |         ^~~~~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |                    ~~~^~
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                ^~~~~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2crossing_edge_query.h:30,
                 from s2/s2crossing_edge_query.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2debug.cc -o s2/s2debug.o
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/bits/stl_algobase.h:71,
                 from /usr/include/c++/13/bits/stl_uninitialized.h:63,
                 from /usr/include/c++/13/memory:69,
                 from ../src/s2/s2convex_hull_query.h:21:
/usr/include/c++/13/bits/predefined_ops.h: In instantiation of ‘constexpr __gnu_cxx::__ops::_Iter_comp_iter<_Compare> __gnu_cxx::__ops::__iter_comp_iter(_Compare) [with _Compare = OrderedCcwAround]’:
/usr/include/c++/13/bits/stl_algo.h:4894:70:   required from ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = OrderedCcwAround]’
s2/s2convex_hull_query.cc:130:12:   required from here
/usr/include/c++/13/bits/predefined_ops.h:164:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  164 |     __iter_comp_iter(_Compare __comp)
      |     ^~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
/usr/include/c++/13/bits/predefined_ops.h: In instantiation of ‘__gnu_cxx::__ops::_Val_comp_iter<_Compare> __gnu_cxx::__ops::__val_comp_iter(_Iter_comp_iter<_Compare>) [with _Compare = OrderedCcwAround]’:
/usr/include/c++/13/bits/stl_algo.h:1828:38:   required from ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’
/usr/include/c++/13/bits/stl_algo.h:1859:25:   required from ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’
/usr/include/c++/13/bits/stl_algo.h:1950:31:   required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’
/usr/include/c++/13/bits/stl_algo.h:4894:18:   required from ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = OrderedCcwAround]’
s2/s2convex_hull_query.cc:130:12:   required from here
/usr/include/c++/13/bits/predefined_ops.h:252:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  252 |     __val_comp_iter(_Iter_comp_iter<_Compare> __comp)
      |     ^~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
s2/s2convex_hull_query.cc: In member function ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetConvexHull()’:
s2/s2convex_hull_query.cc:129:38: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point origin = cap.center().Ortho();
      |                    ~~~~~~~~~~~~~~~~~~^~
../src/s2/s2loop.h: In static member function ‘static std::vector<S2Point> S2Loop::kFull()’:
../src/s2/s2loop.h:698:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  698 |   return std::vector<S2Point>(1, kFullVertex());
      |                                  ~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In member function ‘Vector3<T> Vector3<T>::Ortho() const [with T = double]’:
../src/s2/util/math/vector.h:477:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  477 |   Vector3 Ortho() const {
      |           ^~~~~
In file included from /usr/include/c++/13/algorithm:61,
                 from ../src/s2/s2cap.h:21:
/usr/include/c++/13/bits/stl_algo.h: In function ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = OrderedCcwAround]’:
/usr/include/c++/13/bits/stl_algo.h:4882:5: note: parameter passing for argument of type ‘OrderedCcwAround’ when C++17 is enabled changed to match C++14 in GCC 10.1
 4882 |     sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
      |     ^~~~
/usr/include/c++/13/bits/stl_algo.h:4894:18: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 4894 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h: In function ‘constexpr __gnu_cxx::__ops::_Iter_comp_iter<_Compare> __gnu_cxx::__ops::__iter_comp_iter(_Compare) [with _Compare = OrderedCcwAround]’:
/usr/include/c++/13/bits/predefined_ops.h:164:5: note: parameter passing for argument of type ‘OrderedCcwAround’ when C++17 is enabled changed to match C++14 in GCC 10.1
  164 |     __iter_comp_iter(_Compare __comp)
      |     ^~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h:165:61: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  165 |     { return _Iter_comp_iter<_Compare>(_GLIBCXX_MOVE(__comp)); }
      |                                                             ^
/usr/include/c++/13/bits/predefined_ops.h: In constructor ‘constexpr __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::_Iter_comp_iter(_Compare) [with _Compare = OrderedCcwAround]’:
/usr/include/c++/13/bits/predefined_ops.h:150:7: note: parameter passing for argument of type ‘OrderedCcwAround’ when C++17 is enabled changed to match C++14 in GCC 10.1
  150 |       _Iter_comp_iter(_Compare __comp)
      |       ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h: In function ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_algo.h:1942:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1942 |     __sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
      |     ^~~~~~
In file included from /usr/include/c++/13/bits/stl_algo.h:61:
/usr/include/c++/13/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Distance = long int; _Tp = S2Point; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_heap.h:224:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  224 |     __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
      |     ^~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_heap.h:224:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
/usr/include/c++/13/bits/stl_heap.h: In function ‘void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Distance = long int; _Tp = S2Point; _Compare = __gnu_cxx::__ops::_Iter_comp_val<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_heap.h:135:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  135 |     __push_heap(_RandomAccessIterator __first,
      |     ^~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h: In function ‘_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_algo.h:1893:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1893 |     __unguarded_partition_pivot(_RandomAccessIterator __first,
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h: In function ‘void std::__unguarded_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_algo.h:1840:39: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1840 |         std::__unguarded_linear_insert(__i,
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
 1841 |                                 __gnu_cxx::__ops::__val_comp_iter(__comp));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h: In function ‘__gnu_cxx::__ops::_Val_comp_iter<_Compare> __gnu_cxx::__ops::__val_comp_iter(_Iter_comp_iter<_Compare>) [with _Compare = OrderedCcwAround]’:
/usr/include/c++/13/bits/predefined_ops.h:252:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  252 |     __val_comp_iter(_Iter_comp_iter<_Compare> __comp)
      |     ^~~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h:253:60: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  253 |     { return _Val_comp_iter<_Compare>(_GLIBCXX_MOVE(__comp)); }
      |                                                            ^
/usr/include/c++/13/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_algo.h:1812:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1812 |     __insertion_sort(_RandomAccessIterator __first,
      |     ^~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h:1827:43: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1827 |             std::__unguarded_linear_insert(__i,
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
 1828 |                                 __gnu_cxx::__ops::__val_comp_iter(__comp));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2loop.h: In static member function ‘static std::vector<S2Point> S2Loop::kEmpty()’:
../src/s2/s2loop.h:694:46: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  694 |   return std::vector<S2Point>(1, kEmptyVertex());
      |                                  ~~~~~~~~~~~~^~
s2/s2convex_hull_query.cc: In member function ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetSinglePointLoop(const S2Point&)’:
s2/s2convex_hull_query.cc:187:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  187 |   S2Point d1 = p.CrossProd(d0);
      |                ~~~~~~~~~~~^~~~
s2/s2convex_hull_query.cc:190:50: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  190 |   vertices.push_back((p + kOffset * d0).Normalize());
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2convex_hull_query.cc:190:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  190 |   vertices.push_back((p + kOffset * d0).Normalize());
      |                           ~~~~~~~~^~~~
s2/s2convex_hull_query.cc:190:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  190 |   vertices.push_back((p + kOffset * d0).Normalize());
      |                      ~~~^~~~~~~~~~~~~~~
s2/s2convex_hull_query.cc:191:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  191 |   vertices.push_back((p + kOffset * d1).Normalize());
      |                           ~~~~~~~~^~~~
s2/s2convex_hull_query.cc:191:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  191 |   vertices.push_back((p + kOffset * d1).Normalize());
      |                      ~~~^~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In function ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2convex_hull_query.cc: In member function ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetSingleEdgeLoop(const S2Point&, const S2Point&)’:
s2/s2convex_hull_query.cc:207:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  207 |   if (a == -b) return make_unique<S2Loop>(S2Loop::kFull());
      |            ^~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2earth.cc -o s2/s2earth.o
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |                    ~~~^~
s2/s2convex_hull_query.cc: In member function ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetSinglePointLoop(const S2Point&)’:
s2/s2convex_hull_query.cc:190:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  190 |   vertices.push_back((p + kOffset * d0).Normalize());
      |                                     ^~
s2/s2convex_hull_query.cc:190:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  190 |   vertices.push_back((p + kOffset * d0).Normalize());
      |                                     ^~
s2/s2convex_hull_query.cc:191:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  191 |   vertices.push_back((p + kOffset * d1).Normalize());
      |                                     ^~
s2/s2convex_hull_query.cc:191:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  191 |   vertices.push_back((p + kOffset * d1).Normalize());
      |                                     ^~
s2/s2convex_hull_query.cc: In member function ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetSingleEdgeLoop(const S2Point&, const S2Point&)’:
s2/s2convex_hull_query.cc:207:13: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  207 |   if (a == -b) return make_unique<S2Loop>(S2Loop::kFull());
      |             ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/s2padded_cell.h:23,
                 from ../src/s2/s2crossing_edge_query.h:31:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_crosser.h:23,
                 from s2/s2crossing_edge_query.cc:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
/usr/include/c++/13/bits/stl_algo.h: In function ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_algo.h:1792:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1792 |     __unguarded_linear_insert(_RandomAccessIterator __last,
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_algo.h:1812:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1812 |     __insertion_sort(_RandomAccessIterator __first,
      |     ^~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h:1827:43: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1827 |             std::__unguarded_linear_insert(__i,
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
 1828 |                                 __gnu_cxx::__ops::__val_comp_iter(__comp));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Distance = long int; _Tp = S2Point; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’:
/usr/include/c++/13/bits/stl_heap.h:224:5: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  224 |     __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
      |     ^~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_heap.h:224:5: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In function ‘void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’,
    inlined from ‘void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1635:23,
    inlined from ‘void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1910:25,
    inlined from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1926:27:
/usr/include/c++/13/bits/stl_heap.h:356:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 |           std::__adjust_heap(__first, __parent, __len, _GLIBCXX_MOVE(__value),
      |           ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  357 |                              __comp);
      |                              ~~~~~~~
/usr/include/c++/13/bits/stl_heap.h:356:29: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In function ‘void std::__pop_heap(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’,
    inlined from ‘void std::__sort_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_heap.h:425:19,
    inlined from ‘void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1911:23,
    inlined from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1926:27:
/usr/include/c++/13/bits/stl_heap.h:264:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  264 |       std::__adjust_heap(__first, _DistanceType(0),
      |       ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
  265 |                          _DistanceType(__last - __first),
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  266 |                          _GLIBCXX_MOVE(__value), __comp);
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_heap.h:264:25: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2crossing_edge_query.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
In static member function ‘static std::vector<S2Point> S2Loop::kFull()’,
    inlined from ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetSingleEdgeLoop(const S2Point&, const S2Point&)’ at s2/s2convex_hull_query.cc:207:56:
../src/s2/s2loop.h:698:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  698 |   return std::vector<S2Point>(1, kFullVertex());
      |                                  ~~~~~~~~~~~^~
In member function ‘Vector3<T> Vector3<T>::Ortho() const [with T = double]’,
    inlined from ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetConvexHull()’ at s2/s2convex_hull_query.cc:129:38:
../src/s2/util/math/vector.h:482:21: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  482 |     return CrossProd(temp).Normalize();
      |            ~~~~~~~~~^~~~~~
In static member function ‘static std::vector<S2Point> S2Loop::kEmpty()’,
    inlined from ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetConvexHull()’ at s2/s2convex_hull_query.cc:139:48:
../src/s2/s2loop.h:694:46: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  694 |   return std::vector<S2Point>(1, kEmptyVertex());
      |                                  ~~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In function ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’,
    inlined from ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = OrderedCcwAround]’ at /usr/include/c++/13/bits/stl_algo.h:4894:18,
    inlined from ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetConvexHull()’ at s2/s2convex_hull_query.cc:130:12:
/usr/include/c++/13/bits/stl_algo.h:1947:32: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1947 |           std::__introsort_loop(__first, __last,
      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
 1948 |                                 std::__lg(__last - __first) * 2,
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1949 |                                 __comp);
      |                                 ~~~~~~~
In function ‘void std::__unguarded_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’,
    inlined from ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1860:35,
    inlined from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1950:31,
    inlined from ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = OrderedCcwAround]’ at /usr/include/c++/13/bits/stl_algo.h:4894:18,
    inlined from ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetConvexHull()’ at s2/s2convex_hull_query.cc:130:12:
/usr/include/c++/13/bits/stl_algo.h:1840:39: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Val_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1840 |         std::__unguarded_linear_insert(__i,
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
 1841 |                                 __gnu_cxx::__ops::__val_comp_iter(__comp));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’,
    inlined from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>]’ at /usr/include/c++/13/bits/stl_algo.h:1950:31,
    inlined from ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<S2Point*, vector<S2Point> >; _Compare = OrderedCcwAround]’ at /usr/include/c++/13/bits/stl_algo.h:4894:18,
    inlined from ‘std::unique_ptr<S2Loop> S2ConvexHullQuery::GetConvexHull()’ at s2/s2convex_hull_query.cc:130:12:
/usr/include/c++/13/bits/stl_algo.h:1864:30: note: parameter passing for argument of type ‘__gnu_cxx::__ops::_Iter_comp_iter<OrderedCcwAround>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1864 |         std::__insertion_sort(__first, __last, __comp);
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2edge_clipping.cc -o s2/s2edge_clipping.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2crossing_edge_query.cc: In member function ‘bool S2CrossingEdgeQuery::VisitCells(const S2Point&, const S2Point&, const CellVisitor&)’:
s2/s2crossing_edge_query.cc:217:55: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  217 |     R2Rect edge_bound = R2Rect::FromPointPair(a0_, a1_);
      |                                                       ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::FromPointPair(const R2Point&, const R2Point&)’:
../src/s2/r2rect.h:189:42: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  189 |   return R2Rect(R1Interval::FromPointPair(p1.x(), p2.x()),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
s2/s2crossing_edge_query.cc: In member function ‘bool S2CrossingEdgeQuery::VisitCells(const S2Point&, const S2Point&, const S2PaddedCell&, const CellVisitor&)’:
s2/s2crossing_edge_query.cc:254:55: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |     R2Rect edge_bound = R2Rect::FromPointPair(a0_, a1_);
      |                                                       ^
s2/s2crossing_edge_query.cc: In member function ‘bool S2CrossingEdgeQuery::VisitCells(const S2PaddedCell&, const R2Rect&)’:
s2/s2crossing_edge_query.cc:285:38: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  285 |   R2Point center = pcell.middle().lo();
      |                                      ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2edge_crosser.cc -o s2/s2edge_crosser.o
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::FromPointPair(const R2Point&, const R2Point&)’:
../src/s2/r2rect.h:190:42: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  190 |                 R1Interval::FromPointPair(p1.y(), p2.y()));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
s2/s2crossing_edge_query.cc: In member function ‘bool S2CrossingEdgeQuery::VisitCells(const S2PaddedCell&, const R2Rect&)’:
s2/s2crossing_edge_query.cc:285:37: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  285 |   R2Point center = pcell.middle().lo();
      |                    ~~~~~~~~~~~~~~~~~^~
s2/s2crossing_edge_query.cc: In member function ‘bool S2CrossingEdgeQuery::VisitCells(const S2Point&, const S2Point&, const S2PaddedCell&, const CellVisitor&)’:
s2/s2crossing_edge_query.cc:254:46: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |     R2Rect edge_bound = R2Rect::FromPointPair(a0_, a1_);
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2earth.h:24,
                 from s2/s2earth.cc:16:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2earth.h:26:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_clipping.h:38,
                 from s2/s2edge_clipping.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from ../src/s2/s2edge_crosser.h:23,
                 from s2/s2edge_crosser.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:490:18:   required from ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double; FloatType = double]’
../src/s2/s2earth.h:241:33:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2edge_crossings.cc -o s2/s2edge_crossings.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2edge_distances.cc -o s2/s2edge_distances.o
In file included from ../src/s2/s2edge_clipping.h:39:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2edge_crossings.h:40:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from s2/s2edge_clipping.cc:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
s2/s2edge_clipping.cc: In function ‘R2Point S2::GetExitPoint(const S2PointUVW&, int)’:
s2/s2edge_clipping.cc:126:58: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 | static R2Point GetExitPoint(const S2PointUVW& n, int axis) {
      |                                                          ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
s2/s2edge_clipping.cc: In function ‘R2Rect S2::GetClippedEdgeBound(const R2Point&, const R2Point&, const R2Rect&)’:
s2/s2edge_clipping.cc:418:46: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  418 |                            const R2Rect& clip) {
      |                                              ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2edge_crossings.h:38:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2edge_clipping.h:37:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector2<T> Vector2<T>::Ortho() const [with T = double]’:
s2/s2edge_clipping.cc:373:28:   required from here
../src/s2/util/math/vector.h:408:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  408 |   Vector2 Ortho() const { return Vector2(-c_[1], c_[0]); }
      |           ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2edge_crosser.h: In constructor ‘S2EdgeCrosserBase<PointRep>::S2EdgeCrosserBase(ArgType, ArgType) [with PointRep = S2::internal::S2Point_PointerRep]’:
../src/s2/s2edge_crosser.h:306:21: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  306 |     : a_(a), b_(b), a_cross_b_(a_->CrossProd(*b_)), have_tangents_(false),
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_crosser.cc: In member function ‘int S2EdgeCrosserBase<PointRep>::CrossingSignInternal2(const S2Point&) [with PointRep = S2::internal::S2Point_PointerRep]’:
s2/s2edge_crosser.cc:55:13: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   55 |     S2Point norm = S2::RobustCrossProd(*a_, *b_);
      |             ^~~~
s2/s2edge_crosser.cc:56:31: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |     a_tangent_ = a_->CrossProd(norm);
      |                  ~~~~~~~~~~~~~^~~~~~
s2/s2edge_crosser.cc: In member function ‘int S2EdgeCrosserBase<PointRep>::CrossingSignInternal(PointRep) [with PointRep = S2::internal::S2Point_ValueRep]’:
s2/s2edge_crosser.cc:29:5: note: parameter passing for argument of type ‘S2::internal::S2Point_ValueRep’ when C++17 is enabled changed to match C++14 in GCC 10.1
   29 | int S2EdgeCrosserBase<PointRep>::CrossingSignInternal(PointRep d) {
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_crosser.cc: In member function ‘int S2EdgeCrosserBase<PointRep>::CrossingSignInternal2(const S2Point&) [with PointRep = S2::internal::S2Point_ValueRep]’:
s2/s2edge_crosser.cc:55:13: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   55 |     S2Point norm = S2::RobustCrossProd(*a_, *b_);
      |             ^~~~
s2/s2edge_crosser.cc:56:31: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |     a_tangent_ = a_->CrossProd(norm);
      |                  ~~~~~~~~~~~~~^~~~~~
s2/s2edge_clipping.cc: In function ‘void S2::GetFaceSegments(const S2Point&, const S2Point&, FaceSegmentVector*)’:
s2/s2edge_clipping.cc:230:40: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  230 |   S2Point ab = S2::RobustCrossProd(a, b);
      |                                        ^
s2/s2edge_clipping.cc:242:15: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  242 |     segment.b = GetExitPoint(n, exit_axis);
      |     ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:248:55: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  248 |     S2Point exit_xyz = S2::FaceUVtoXYZ(face, segment.b);
      |                                                       ^
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:13: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |             ^~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:133:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  133 |   friend S2Point operator-(const S2Point& pnt) {
      |                  ^~~~~~~~
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc: In function ‘int S2::MoveOriginToValidFace(int, const S2Point&, const S2Point&, R2Point*)’:
s2/s2edge_clipping.cc:155:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  155 |   S2PointUVW n = S2::FaceXYZtoUVW(face, ab);
      |                                           ^
s2/s2edge_clipping.cc:159:54: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  159 |     S2Point exit = S2::FaceUVtoXYZ(face, GetExitPoint(n, GetExitAxis(n)));
      |                                          ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:159:73: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  159 |     S2Point exit = S2::FaceUVtoXYZ(face, GetExitPoint(n, GetExitAxis(n)));
      |                                                                         ^
s2/s2edge_clipping.cc:160:49: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     S2Point a_tangent = ab.Normalize().CrossProd(a);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_clipping.cc:160:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     S2Point a_tangent = ab.Normalize().CrossProd(a);
      |                         ~~~~~~~~~~~~^~
s2/s2edge_clipping.cc:160:49: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     S2Point a_tangent = ab.Normalize().CrossProd(a);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_clipping.cc:161:15: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  161 |     if ((exit - a).DotProd(a_tangent) >= -kFaceClipErrorRadians) {
      |         ~~~~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2edge_clipping.cc: In function ‘R2Point S2::GetExitPoint(const S2PointUVW&, int)’:
s2/s2edge_clipping.cc:126:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 | static R2Point GetExitPoint(const S2PointUVW& n, int axis) {
      |                ^~~~~~~~~~~~
In file included from s2/s2edge_clipping.cc:27:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
s2/s2edge_clipping.cc: In function ‘bool S2::ClipToPaddedFace(const S2Point&, const S2Point&, int, double, R2Point*, R2Point*)’:
s2/s2edge_clipping.cc:352:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  352 |   S2PointUVW a_tangent = n.CrossProd(a);
      |                          ~~~~~~~~~~~^~~
s2/s2edge_clipping.cc:356:39: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 |   int a_score = ClipDestination(b, a, -scaled_n, b_tangent, a_tangent,
      |                                       ^~~~~~~~~
s2/s2edge_clipping.cc: In function ‘int S2::ClipDestination(const S2PointUVW&, const S2PointUVW&, const S2PointUVW&, const S2PointUVW&, const S2PointUVW&, double, R2Point*)’:
s2/s2edge_clipping.cc:284:7: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  284 |   *uv = scale_uv * GetExitPoint(scaled_n, GetExitAxis(scaled_n));
      |   ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:307:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  307 |   if ((p - a).DotProd(a_tangent) < 0) {
      |       ~~~^~~~
../src/s2/util/math/vector.h: In function ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’:
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
s2/s2edge_clipping.cc: In function ‘bool S2::IntersectsRect(const R2Point&, const R2Point&, const R2Rect&)’:
s2/s2edge_clipping.cc:365:44: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  365 |   R2Rect bound = R2Rect::FromPointPair(a, b);
      |                                            ^
s2/s2edge_clipping.cc:373:29: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |   R2Point n = (b - a).Ortho();
      |                             ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::FromPointPair(const R2Point&, const R2Point&)’:
../src/s2/r2rect.h:188:15: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  188 | inline R2Rect R2Rect::FromPointPair(const R2Point& p1, const R2Point& p2) {
      |               ^~~~~~
../src/s2/r2rect.h:189:42: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  189 |   return R2Rect(R1Interval::FromPointPair(p1.x(), p2.x()),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘Vector2<T> Vector2<T>::Ortho() const [with T = double]’:
../src/s2/util/math/vector.h:408:11: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  408 |   Vector2 Ortho() const { return Vector2(-c_[1], c_[0]); }
      |           ^~~~~
s2/s2edge_clipping.cc: In function ‘R2Rect S2::GetClippedEdgeBound(const R2Point&, const R2Point&, const R2Rect&)’:
s2/s2edge_clipping.cc:417:8: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  417 | R2Rect GetClippedEdgeBound(const R2Point& a, const R2Point& b,
      |        ^~~~~~~~~~~~~~~~~~~
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:185:34: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  185 |   return R2Rect(R1Interval::Empty(), R1Interval::Empty());
      |                 ~~~~~~~~~~~~~~~~~^~
s2/s2edge_clipping.cc: In function ‘bool S2::ClipEdge(const R2Point&, const R2Point&, const R2Rect&, R2Point*, R2Point*)’:
s2/s2edge_clipping.cc:441:44: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  441 |   R2Rect bound = R2Rect::FromPointPair(a, b);
      |                                            ^
s2/s2edge_clipping.cc:444:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  444 |     *a_clipped = bound.GetVertex(ai, aj);
      |     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from s2/s2edge_crossings.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:185:55: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  185 |   return R2Rect(R1Interval::Empty(), R1Interval::Empty());
      |                                      ~~~~~~~~~~~~~~~~~^~
s2/s2edge_clipping.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/s2edge_clipping.cc:451:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  451 | }  // namespace S2
      | ^
s2/s2edge_clipping.cc: In function ‘R2Point S2::GetExitPoint(const S2PointUVW&, int)’:
s2/s2edge_clipping.cc:451:1: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crosser.cc: In member function ‘int S2EdgeCrosserBase<PointRep>::CrossingSignInternal2(const S2Point&) [with PointRep = S2::internal::S2Point_PointerRep]’:
s2/s2edge_crosser.cc:40:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   40 | inline int S2EdgeCrosserBase<PointRep>::CrossingSignInternal2(
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |                    ~~~^~
s2/s2edge_clipping.cc: In function ‘int S2::MoveOriginToValidFace(int, const S2Point&, const S2Point&, R2Point*)’:
s2/s2edge_clipping.cc:161:17: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  161 |     if ((exit - a).DotProd(a_tangent) >= -kFaceClipErrorRadians) {
      |                 ^
s2/s2edge_clipping.cc: In function ‘bool S2::IntersectsRect(const R2Point&, const R2Point&, const R2Rect&)’:
s2/s2edge_clipping.cc:373:28: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  373 |   R2Point n = (b - a).Ortho();
      |               ~~~~~~~~~~~~~^~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2edge_clipping.cc: In function ‘int S2::ClipDestination(const S2PointUVW&, const S2PointUVW&, const S2PointUVW&, const S2PointUVW&, const S2PointUVW&, double, R2Point*)’:
s2/s2edge_clipping.cc:307:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  307 |   if ((p - a).DotProd(a_tangent) < 0) {
      |            ^
s2/s2edge_clipping.cc:284:64: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  284 |   *uv = scale_uv * GetExitPoint(scaled_n, GetExitAxis(scaled_n));
      |                                                                ^
s2/s2edge_clipping.cc:309:19: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  309 |   } else if ((p - b).DotProd(b_tangent) < 0) {
      |                   ^
s2/s2edge_clipping.cc: In function ‘R2Point S2::GetExitPoint(const S2PointUVW&, int)’:
s2/s2edge_clipping.cc:126:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 | static R2Point GetExitPoint(const S2PointUVW& n, int axis) {
      |                ^~~~~~~~~~~~
../src/s2/s2edge_crosser.h: In constructor ‘S2EdgeCrosserBase<PointRep>::S2EdgeCrosserBase(ArgType, ArgType) [with PointRep = S2::internal::S2Point_ValueRep]’:
../src/s2/s2edge_crosser.h:306:45: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  306 |     : a_(a), b_(b), a_cross_b_(a_->CrossProd(*b_)), have_tangents_(false),
      |                                ~~~~~~~~~~~~~^~~~~
s2/s2edge_clipping.cc: In function ‘int S2::MoveOriginToValidFace(int, const S2Point&, const S2Point&, R2Point*)’:
s2/s2edge_clipping.cc:160:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     S2Point a_tangent = ab.Normalize().CrossProd(a);
      |                         ~~~~~~~~~~~~^~
s2/s2edge_clipping.cc:146:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  146 | static int MoveOriginToValidFace(int face, const S2Point& a,
      |            ^~~~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:146:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_clipping.cc:146:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_clipping.cc:155:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  155 |   S2PointUVW n = S2::FaceXYZtoUVW(face, ab);
      |                  ~~~~~~~~~~~~~~~~^~~~~~~~~~
s2/s2edge_clipping.cc:159:54: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  159 |     S2Point exit = S2::FaceUVtoXYZ(face, GetExitPoint(n, GetExitAxis(n)));
      |                                          ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc: In function ‘void S2::GetFaceSegments(const S2Point&, const S2Point&, FaceSegmentVector*)’:
s2/s2edge_clipping.cc:205:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  205 | void GetFaceSegments(const S2Point& a, const S2Point& b,
      |      ^~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:205:6: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_clipping.cc:205:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crosser.cc: In member function ‘int S2EdgeCrosserBase<PointRep>::CrossingSignInternal2(const S2Point&) [with PointRep = S2::internal::S2Point_ValueRep]’:
s2/s2edge_crosser.cc:40:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   40 | inline int S2EdgeCrosserBase<PointRep>::CrossingSignInternal2(
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:205:6: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_clipping.cc:205:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_clipping.cc:242:29: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  242 |     segment.b = GetExitPoint(n, exit_axis);
      |                 ~~~~~~~~~~~~^~~~~~~~~~~~~~
s2/s2edge_clipping.cc:250:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  250 |     S2PointUVW exit_uvw = S2::FaceXYZtoUVW(face, exit_xyz);
      |                           ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
s2/s2edge_crosser.cc: In member function ‘int S2EdgeCrosserBase<PointRep>::CrossingSignInternal(PointRep) [with PointRep = S2::internal::S2Point_ValueRep]’:
s2/s2edge_crosser.cc:29:5: note: parameter passing for argument of type ‘S2::internal::S2Point_ValueRep’ when C++17 is enabled changed to match C++14 in GCC 10.1
   29 | int S2EdgeCrosserBase<PointRep>::CrossingSignInternal(PointRep d) {
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc: In function ‘bool S2::IntersectsRect(const R2Point&, const R2Point&, const R2Rect&)’:
s2/s2edge_clipping.cc:365:39: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  365 |   R2Rect bound = R2Rect::FromPointPair(a, b);
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2edge_tessellator.cc -o s2/s2edge_tessellator.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2error.cc -o s2/s2error.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2edge_crossings.h:40:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
s2/s2edge_crossings.cc: In function ‘S2Point S2::RobustCrossProd(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:136:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 | S2Point RobustCrossProd(const S2Point& a, const S2Point& b) {
      |                                                           ^
s2/s2edge_crossings.cc: In function ‘Vector3_d S2::SymbolicCrossProdSorted(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:170:76: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  170 | static Vector3_d SymbolicCrossProdSorted(const S2Point& a, const S2Point& b) {
      |                                                                            ^
s2/s2edge_crossings.cc: In function ‘S2Point S2::ToS2Point(const Vector3_xf&)’:
s2/s2edge_crossings.cc:657:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  657 | inline static S2Point ToS2Point(const Vector3_xf& xf) {
      |                                                     ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2edge_distances.h:29,
                 from s2/s2edge_distances.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from ../src/s2/s2edge_distances.h:31:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2edge_crossings.h:38:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = long double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
s2/s2edge_crossings.cc:160:27:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2point.h: In instantiation of ‘static S2Point S2Point::Cast(const Vector3<T>&) [with T = long double]’:
s2/s2edge_crossings.cc:492:28:   required from here
../src/s2/s2point.h:138:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  138 |   static S2Point Cast(const Vector3<T>& b) {
      |                  ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = int; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
s2/s2edge_crossings.cc:679:53:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::Cast<long double>(const Vector3<long double>&)::<lambda(const long double&)>; As = {const Vector3<long double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = long double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
s2/s2edge_crossings.cc:160:27:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::Cast<long double>(const Vector3<long double>&)::<lambda(const long double&)>; As = {const long double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::Cast<long double>(const Vector3<long double>&)::<lambda(const long double&)>; As = {const Vector3<long double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = long double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
s2/s2edge_crossings.cc:160:27:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = long double; VT2 = Vector3; T2 = long double; long unsigned int N2 = 3]’:
s2/s2edge_crossings.cc:422:28:   required from ‘T S2::RobustNormalWithLength(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’
s2/s2edge_crossings.cc:476:29:   required from ‘bool S2::GetIntersectionSimple(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’
s2/s2edge_crossings.cc:490:28:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<int>(const int&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = int; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = int; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
s2/s2edge_crossings.cc:679:53:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
s2/s2edge_crossings.cc:295:42:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = long double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = long double; VT2 = Vector3; T2 = long double; long unsigned int N2 = 3]’
s2/s2edge_crossings.cc:422:28:   required from ‘T S2::RobustNormalWithLength(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’
s2/s2edge_crossings.cc:476:29:   required from ‘bool S2::GetIntersectionSimple(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’
s2/s2edge_crossings.cc:490:28:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<int>(const int&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<int>(const int&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = int; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = int; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
s2/s2edge_crossings.cc:679:53:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::MulScalarInternal<long double>(const long double&) const::<lambda(const long double&)>; As = {const Vector3<long double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = long double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = long double; VT2 = Vector3; T2 = long double; long unsigned int N2 = 3]’
s2/s2edge_crossings.cc:422:28:   required from ‘T S2::RobustNormalWithLength(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’
s2/s2edge_crossings.cc:476:29:   required from ‘bool S2::GetIntersectionSimple(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’
s2/s2edge_crossings.cc:490:28:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::internal::GetStableCrossProd(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = double]’:
s2/s2edge_crossings.cc:123:3: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  123 |   *result = (a - b).CrossProd(a + b);
      |   ^
s2/s2edge_crossings.cc: In function ‘bool S2::internal::GetStableCrossProd(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’:
s2/s2edge_crossings.cc:123:3: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crossings.cc: In function ‘S2Point S2::RobustCrossProd(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:136:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 | S2Point RobustCrossProd(const S2Point& a, const S2Point& b) {
      |         ^~~~~~~~~~~~~~~
s2/s2edge_crossings.cc:159:48: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  159 |   if (kHasLongDouble && GetStableCrossProd(ToLD(a), ToLD(b), &result_ld)) {
      |                                            ~~~~^~~
s2/s2edge_crossings.cc:160:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     return Vector3_d::Cast(result_ld);
      |                                     ^
s2/s2edge_crossings.cc:160:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     return Vector3_d::Cast(result_ld);
      |            ~~~~~~~~~~~~~~~^~~~~~~~~~~
s2/s2edge_crossings.cc:163:39: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  163 |   return internal::ExactCrossProd(a, b);
      |                                       ^
s2/s2edge_crossings.cc:163:34: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  163 |   return internal::ExactCrossProd(a, b);
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:26: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                          ^~~~
../src/s2/util/math/vector.h: In static member function ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = long double; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
s2/s2edge_crossings.cc: In function ‘bool S2::VertexCrossing(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:370:63: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  370 |   if (a == c) return (b == d) || s2pred::OrderedCCW(S2::RefDir(a), d, b, a);
      |                                                     ~~~~~~~~~~^~~
s2/s2edge_crossings.cc: In function ‘S2Point S2::internal::GetIntersectionExact(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:679:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  679 |     return s2pred::Sign(a0, a1, b1) * ToS2Point(x_xf);
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
s2/s2edge_crossings.cc:679:48: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  679 |     return s2pred::Sign(a0, a1, b1) * ToS2Point(x_xf);
      |                                       ~~~~~~~~~^~~~~~
s2/s2edge_crossings.cc:679:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  679 |     return s2pred::Sign(a0, a1, b1) * ToS2Point(x_xf);
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
s2/s2edge_crossings.cc:693:39: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  693 |   S2Point a_norm = ToS2Point(a_norm_xf);
      |                                       ^
s2/s2edge_crossings.cc:695:61: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  695 |   if (a_norm == S2Point(0, 0, 0)) a_norm = SymbolicCrossProd(a0, a1);
      |                                            ~~~~~~~~~~~~~~~~~^~~~~~~~
s2/s2edge_crossings.cc:705:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  705 |   return x;
      |          ^
../src/s2/util/math/vector.h: In function ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = int; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
s2/s2edge_crossings.cc: In function ‘S2Point S2::ToS2Point(const Vector3_xf&)’:
s2/s2edge_crossings.cc:657:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  657 | inline static S2Point ToS2Point(const Vector3_xf& xf) {
      |                       ^~~~~~~~~
s2/s2edge_crossings.cc:658:45: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  658 |   return NormalizableFromExact(xf).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2edge_crossings.cc: In function ‘S2Point S2::GetIntersection(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:722:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  722 | S2Point GetIntersection(const S2Point& a0, const S2Point& a1,
      |         ^~~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::GetIntersectionStable(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = double]’:
s2/s2edge_crossings.cc:636:18: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  636 |   T a_len2 = (a1 - a0).Norm2();
      |              ~~~~^~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::GetIntersectionStableLD(const S2Point&, const S2Point&, const S2Point&, const S2Point&, S2Point*)’:
s2/s2edge_crossings.cc:649:33: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  649 |   if (GetIntersectionStable(ToLD(a0), ToLD(a1), ToLD(b0), ToLD(b1),
      |                             ~~~~^~~~
s2/s2edge_crossings.cc:651:13: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  651 |     *result = S2Point::Cast(result_ld);
      |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::GetIntersectionStable(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’:
s2/s2edge_crossings.cc:636:18: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  636 |   T a_len2 = (a1 - a0).Norm2();
      |              ~~~~^~~~~
../src/s2/s2point.h: In static member function ‘static S2Point S2Point::Cast(const Vector3<T>&) [with T = long double]’:
../src/s2/s2point.h:138:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  138 |   static S2Point Cast(const Vector3<T>& b) {
      |                  ^~~~
../src/s2/s2point.h:139:22: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  139 |     return Base::Cast(b);
      |            ~~~~~~~~~~^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_distances.cc: In function ‘S2Point S2::GetPointOnLine(const S2Point&, const S2Point&, S1ChordAngle)’:
s2/s2edge_distances.cc:46:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   46 | S2Point GetPointOnLine(const S2Point& a, const S2Point& b,
      |         ^~~~~~~~~~~~~~
s2/s2edge_distances.cc:50:65: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   50 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2edge_distances.cc:50:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   50 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~^~~~~~
s2/s2edge_distances.cc:50:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   50 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_distances.cc:51:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   51 |   return GetPointOnRay(a, dir, r);
      |                                 ^
../src/s2/util/math/vector.h: In member function ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Normalize() const [with VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:187:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  187 |   D Normalize() const {
      |     ^~~~~~~~~
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:257:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  257 | inline S2Point GetPointOnRay(const S2Point& origin, const S2Point& dir,
      |                ^~~~~~~~~~~~~
../src/s2/s2edge_distances.h:272:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  272 |   return (cos(r) * origin + sin(r) * dir).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2edge_distances.cc: In function ‘S2Point S2::GetPointOnLine(const S2Point&, const S2Point&, S1Angle)’:
s2/s2edge_distances.cc:54:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 | S2Point GetPointOnLine(const S2Point& a, const S2Point& b, S1Angle r) {
      |         ^~~~~~~~~~~~~~
s2/s2edge_distances.cc:56:65: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2edge_distances.cc:56:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~^~~~~~
s2/s2edge_distances.cc:56:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_distances.cc:57:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   57 |   return GetPointOnRay(a, dir, r);
      |                                 ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1Angle)’:
../src/s2/s2edge_distances.h:283:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  283 |   return (cos(r) * origin + sin(r) * dir).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2edge_distances.cc: In function ‘S2Point S2::GetPointToLeft(const S2Point&, const S2Point&, S1Angle)’:
s2/s2edge_distances.cc:60:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   60 | S2Point GetPointToLeft(const S2Point& a, const S2Point& b, S1Angle r) {
      |         ^~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2edge_distances.cc: In function ‘S2Point S2::GetPointToLeft(const S2Point&, const S2Point&, S1ChordAngle)’:
s2/s2edge_distances.cc:64:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   64 | S2Point GetPointToLeft(const S2Point& a, const S2Point& b, S1ChordAngle r) {
      |         ^~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2edge_distances.cc: In function ‘bool S2::AlwaysUpdateMinInteriorDistance(const S2Point&, const S2Point&, const S2Point&, double, double, S1ChordAngle*) [with bool always_update = true]’:
s2/s2edge_distances.cc:138:19: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  138 |   double ab2 = (a - b).Norm2();
      |                ~~~^~~~
s2/s2edge_distances.cc:175:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  175 |   S2Point cx = c.CrossProd(x);
      |                ~~~~~~~~~~~^~~
s2/s2edge_distances.cc:176:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  176 |   if ((a - x).DotProd(cx) >= 0 || (b - x).DotProd(cx) <= 0) {
      |       ~~~^~~~
s2/s2edge_distances.cc: In function ‘bool S2::AlwaysUpdateMinInteriorDistance(const S2Point&, const S2Point&, const S2Point&, double, double, S1ChordAngle*) [with bool always_update = false]’:
s2/s2edge_distances.cc:175:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  175 |   S2Point cx = c.CrossProd(x);
      |                ~~~~~~~~~~~^~~
s2/s2edge_distances.cc:176:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  176 |   if ((a - x).DotProd(cx) >= 0 || (b - x).DotProd(cx) <= 0) {
      |       ~~~^~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_distances.cc: In function ‘bool S2::UpdateMinInteriorDistance(const S2Point&, const S2Point&, const S2Point&, S1ChordAngle*)’:
s2/s2edge_distances.cc:252:19: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  252 |   double xa2 = (x - a).Norm2(), xb2 = (x - b).Norm2();
      |                ~~~^~~~
s2/s2edge_distances.cc: In function ‘S2Point S2::Project(const S2Point&, const S2Point&, const S2Point&, const Vector3_d&)’:
s2/s2edge_distances.cc:307:34: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  307 |   S2Point n = a_cross_b.Normalize();
      |               ~~~~~~~~~~~~~~~~~~~^~
s2/s2edge_distances.cc:308:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  308 |   S2Point p = S2::RobustCrossProd(n, x).CrossProd(n).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~^~~~~~
s2/s2edge_distances.cc:308:50: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  308 |   S2Point p = S2::RobustCrossProd(n, x).CrossProd(n).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_distances.cc:313:12: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  313 |     return p;
      |            ^
s2/s2edge_distances.cc: In function ‘bool S2::IsEdgeBNearEdgeA(const S2Point&, const S2Point&, const S2Point&, const S2Point&, S1Angle)’:
s2/s2edge_distances.cc:474:32: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  473 |   S2Point furthest = b_ortho.CrossProd(S2::RobustCrossProd(a_ortho, b_ortho))
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  474 |                      .Normalize();
      |                      ~~~~~~~~~~^~
s2/s2edge_distances.cc:473:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  473 |   S2Point furthest = b_ortho.CrossProd(S2::RobustCrossProd(a_ortho, b_ortho))
      |                                        ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
s2/s2edge_distances.cc:473:39: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  473 |   S2Point furthest = b_ortho.CrossProd(S2::RobustCrossProd(a_ortho, b_ortho))
      |                      ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::internal::GetStableCrossProd(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’:
s2/s2edge_crossings.cc:123:33: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  123 |   *result = (a - b).CrossProd(a + b);
      |                               ~~^~~
s2/s2edge_crossings.cc: In function ‘bool S2::VertexCrossing(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:370:63: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  370 |   if (a == c) return (b == d) || s2pred::OrderedCCW(S2::RefDir(a), d, b, a);
      |                                                     ~~~~~~~~~~^~~
s2/s2edge_crossings.cc: In function ‘Vector3_d S2::EnsureNormalizable(const Vector3_d&)’:
s2/s2edge_crossings.cc:788:1: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  788 | }  // namespace S2
      | ^
s2/s2edge_crossings.cc: In function ‘S2Point S2::RobustCrossProd(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:159:57: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  159 |   if (kHasLongDouble && GetStableCrossProd(ToLD(a), ToLD(b), &result_ld)) {
      |                                                     ~~~~^~~
s2/s2edge_crossings.cc:160:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  160 |     return Vector3_d::Cast(result_ld);
      |            ~~~~~~~~~~~~~~~^~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘T S2::GetProjection(const Vector3<T>&, const Vector3<T>&, T, const Vector3<T>&, const Vector3<T>&, T*) [with T = long double]’:
s2/s2edge_crossings.cc:513:21: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  513 |   Vector3<T> x1 = x - a1;
      |                   ~~^~~~
s2/s2edge_distances.cc: In function ‘bool S2::AlwaysUpdateMinInteriorDistance(const S2Point&, const S2Point&, const S2Point&, double, double, S1ChordAngle*) [with bool always_update = true]’:
s2/s2edge_distances.cc:138:19: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  138 |   double ab2 = (a - b).Norm2();
      |                ~~~^~~~
s2/s2edge_crossings.cc: In function ‘bool S2::GetIntersectionStableLD(const S2Point&, const S2Point&, const S2Point&, const S2Point&, S2Point*)’:
s2/s2edge_crossings.cc:651:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  651 |     *result = S2Point::Cast(result_ld);
      |               ~~~~~~~~~~~~~^~~~~~~~~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2edge_distances.cc: In function ‘bool S2::UpdateMaxDistance(const S2Point&, const S2Point&, const S2Point&, S1ChordAngle*)’:
s2/s2edge_distances.cc:237:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  237 |     AlwaysUpdateMinDistance<true>(-x, a, b, &dist);
      |                                    ^
s2/s2edge_crossings.cc: In function ‘Vector3_d S2::NormalizableFromExact(const Vector3_xf&)’:
s2/s2edge_crossings.cc:305:18: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  305 | static Vector3_d NormalizableFromExact(const Vector3_xf& xf) {
      |                  ^~~~~~~~~~~~~~~~~~~~~
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:272:20: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  272 |   return (cos(r) * origin + sin(r) * dir).Normalize();
      |                    ^~~~~~
s2/s2edge_distances.cc: In function ‘S2Point S2::GetPointOnLine(const S2Point&, const S2Point&, S1ChordAngle)’:
s2/s2edge_distances.cc:46:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   46 | S2Point GetPointOnLine(const S2Point& a, const S2Point& b,
      |         ^~~~~~~~~~~~~~
s2/s2edge_distances.cc: In function ‘S2Point S2::GetPointOnLine(const S2Point&, const S2Point&, S1Angle)’:
s2/s2edge_distances.cc:56:52: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |   S2Point dir = S2::RobustCrossProd(a, b).CrossProd(a).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_distances.cc:54:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 | S2Point GetPointOnLine(const S2Point& a, const S2Point& b, S1Angle r) {
      |         ^~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::GetIntersectionStableSorted(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’:
s2/s2edge_crossings.cc:552:42: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  552 |   Vector3<T> a_norm = (a0 - a1).CrossProd(a0 + a1);
      |                       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::GetIntersectionStableSorted(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = double]’:
s2/s2edge_crossings.cc:552:42: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  552 |   Vector3<T> a_norm = (a0 - a1).CrossProd(a0 + a1);
      |                       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
s2/s2edge_distances.cc: In function ‘S2Point S2::Project(const S2Point&, const S2Point&, const S2Point&, const Vector3_d&)’:
s2/s2edge_distances.cc:308:50: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  308 |   S2Point p = S2::RobustCrossProd(n, x).CrossProd(n).Normalize();
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
s2/s2edge_distances.cc:283:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  283 | S2Point Project(const S2Point& x, const S2Point& a, const S2Point& b,
      |         ^~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::internal::GetStableCrossProd(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’:
s2/s2edge_crossings.cc:123:30: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  123 |   *result = (a - b).CrossProd(a + b);
      |             ~~~~~~~~~~~~~~~~~^~~~~~~
s2/s2edge_crossings.cc: In function ‘Vector3_d S2::internal::SymbolicCrossProd(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:327:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  327 | Vector3_d SymbolicCrossProd(const S2Point& a, const S2Point& b) {
      |           ^~~~~~~~~~~~~~~~~
s2/s2edge_distances.cc: In function ‘bool S2::IsEdgeBNearEdgeA(const S2Point&, const S2Point&, const S2Point&, const S2Point&, S1Angle)’:
s2/s2edge_distances.cc:473:39: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  473 |   S2Point furthest = b_ortho.CrossProd(S2::RobustCrossProd(a_ortho, b_ortho))
      |                      ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_distances.cc:401:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  401 | bool IsEdgeBNearEdgeA(const S2Point& a0, const S2Point& a1,
      |      ^~~~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘bool S2::VertexCrossing(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:358:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  358 | bool VertexCrossing(const S2Point& a, const S2Point& b,
      |      ^~~~~~~~~~~~~~
s2/s2edge_crossings.cc: In function ‘Vector3_d S2::internal::ExactCrossProd(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:336:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  336 | Vector3_d ExactCrossProd(const S2Point& a, const S2Point& b) {
      |           ^~~~~~~~~~~~~~
In function ‘bool S2::internal::GetStableCrossProd(const Vector3<T>&, const Vector3<T>&, Vector3<T>*) [with T = long double]’,
    inlined from ‘S2Point S2::RobustCrossProd(const S2Point&, const S2Point&)’ at s2/s2edge_crossings.cc:159:43:
s2/s2edge_crossings.cc:123:30: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  123 |   *result = (a - b).CrossProd(a + b);
      |             ~~~~~~~~~~~~~~~~~^~~~~~~
s2/s2edge_crossings.cc: In function ‘S2Point S2::RobustCrossProd(const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:136:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 | S2Point RobustCrossProd(const S2Point& a, const S2Point& b) {
      |         ^~~~~~~~~~~~~~~
s2/s2edge_crossings.cc:136:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crossings.cc:136:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crossings.cc:136:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crossings.cc:136:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_crossings.cc:163:34: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  163 |   return internal::ExactCrossProd(a, b);
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
s2/s2edge_crossings.cc:155:17: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  155 |     return Ortho(a);
      |            ~~~~~^~~
s2/s2edge_crossings.cc: In function ‘S2Point S2::internal::GetIntersectionExact(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:666:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  666 | S2Point GetIntersectionExact(const S2Point& a0, const S2Point& a1,
      |         ^~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2furthest_edge_query.cc -o s2/s2furthest_edge_query.o
s2/s2edge_crossings.cc:666:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
In function ‘S2Point S2::ToS2Point(const Vector3_xf&)’,
    inlined from ‘S2Point S2::internal::GetIntersectionExact(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’ at s2/s2edge_crossings.cc:693:29:
s2/s2edge_crossings.cc:658:31: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  658 |   return NormalizableFromExact(xf).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~^~~~
s2/s2edge_crossings.cc: In function ‘S2Point S2::GetIntersection(const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2edge_crossings.cc:722:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  722 | S2Point GetIntersection(const S2Point& a0, const S2Point& a1,
      |         ^~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2hausdorff_distance_query.cc -o s2/s2hausdorff_distance_query.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2edge_tessellator.h:24,
                 from s2/s2edge_tessellator.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2projections.h:28,
                 from ../src/s2/s2edge_tessellator.h:27:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from ../src/s2/s2edge_distances.h:31,
                 from s2/s2edge_tessellator.cc:26:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2latlng_rect_bounder.cc -o s2/s2latlng_rect_bounder.o
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2edge_tessellator.h:23:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc: In member function ‘S1ChordAngle S2EdgeTessellator::EstimateMaxError(const R2Point&, const S2Point&, const R2Point&, const S2Point&) const’:
s2/s2edge_tessellator.cc:210:42: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  210 |   S2Point mid1 = S2::Interpolate(a, b, t1);
      |                                          ^
s2/s2edge_tessellator.cc:212:52: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  212 |   S2Point pmid1 = proj_.Unproject(proj_.Interpolate(t1, pa, pb));
      |                                   ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
s2/s2edge_tessellator.cc:212:64: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  212 |   S2Point pmid1 = proj_.Unproject(proj_.Interpolate(t1, pa, pb));
      |                                                                ^
s2/s2edge_tessellator.cc:213:52: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |   S2Point pmid2 = proj_.Unproject(proj_.Interpolate(t2, pa, pb));
      |                                   ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
s2/s2edge_tessellator.cc:213:64: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |   S2Point pmid2 = proj_.Unproject(proj_.Interpolate(t2, pa, pb));
      |                                                                ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendProjected(const S2Point&, const S2Point&, std::vector<Vector2<double> >*) const’:
s2/s2edge_tessellator.cc:219:31: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  219 |   R2Point pa = proj_.Project(a);
      |                               ^
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendProjected(const R2Point&, const S2Point&, const R2Point&, const S2Point&, std::vector<Vector2<double> >*) const’:
s2/s2edge_tessellator.cc:242:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  242 |     S2Point mid = (a + b).Normalize();
      |                                     ^
s2/s2edge_tessellator.cc:243:64: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  243 |     R2Point pmid = proj_.WrapDestination(pa, proj_.Project(mid));
      |                                                                ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendUnprojected(const R2Point&, const R2Point&, std::vector<S2Point>*) const’:
s2/s2edge_tessellator.cc:251:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  251 |   S2Point a = proj_.Unproject(pa);
      |                                 ^
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendUnprojected(const R2Point&, const S2Point&, const R2Point&, const S2Point&, std::vector<S2Point>*) const’:
s2/s2edge_tessellator.cc:273:47: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  273 |   R2Point pb = proj_.WrapDestination(pa, pb_in);
      |                                               ^
s2/s2edge_tessellator.cc:278:39: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  278 |     S2Point mid = proj_.Unproject(pmid);
      |                                       ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
In file included from ../src/s2/s2edge_tessellator.h:25:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendProjected(const R2Point&, const S2Point&, const R2Point&, const S2Point&, std::vector<Vector2<double> >*) const’:
s2/s2edge_tessellator.cc:242:24: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  242 |     S2Point mid = (a + b).Normalize();
      |                        ^
s2/s2edge_tessellator.cc: In member function ‘S1ChordAngle S2EdgeTessellator::EstimateMaxError(const R2Point&, const S2Point&, const R2Point&, const S2Point&) const’:
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  199 | S1ChordAngle S2EdgeTessellator::EstimateMaxError(
      |              ^~~~~~~~~~~~~~~~~
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:199:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘S1ChordAngle S2EdgeTessellator::EstimateMaxError(const R2Point&, const S2Point&, const R2Point&, const S2Point&) const’,
    inlined from ‘S1ChordAngle S2EdgeTessellator::EstimateMaxError(const R2Point&, const S2Point&, const R2Point&, const S2Point&) const’ at s2/s2edge_tessellator.cc:199:14:
s2/s2edge_tessellator.cc:212:52: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  212 |   S2Point pmid1 = proj_.Unproject(proj_.Interpolate(t1, pa, pb));
      |                                   ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
s2/s2edge_tessellator.cc:212:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  212 |   S2Point pmid1 = proj_.Unproject(proj_.Interpolate(t1, pa, pb));
      |                   ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_tessellator.cc:213:52: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |   S2Point pmid2 = proj_.Unproject(proj_.Interpolate(t2, pa, pb));
      |                                   ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
s2/s2edge_tessellator.cc:213:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |   S2Point pmid2 = proj_.Unproject(proj_.Interpolate(t2, pa, pb));
      |                   ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendProjected(const R2Point&, const S2Point&, const R2Point&, const S2Point&, std::vector<Vector2<double> >*) const’:
s2/s2edge_tessellator.cc:235:6: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  235 | void S2EdgeTessellator::AppendProjected(const R2Point& pa, const S2Point& a,
      |      ^~~~~~~~~~~~~~~~~
s2/s2edge_tessellator.cc: In member function ‘void S2EdgeTessellator::AppendUnprojected(const R2Point&, const S2Point&, const R2Point&, const S2Point&, std::vector<S2Point>*) const’:
s2/s2edge_tessellator.cc:269:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  269 | void S2EdgeTessellator::AppendUnprojected(
      |      ^~~~~~~~~~~~~~~~~
s2/s2edge_tessellator.cc:269:6: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:269:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2edge_tessellator.cc:273:37: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  273 |   R2Point pb = proj_.WrapDestination(pa, pb_in);
      |                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
s2/s2edge_tessellator.cc:278:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  278 |     S2Point mid = proj_.Unproject(pmid);
      |                   ~~~~~~~~~~~~~~~^~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2latlng_rect.cc -o s2/s2latlng_rect.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2furthest_edge_query.h:29,
                 from s2/s2furthest_edge_query.cc:16:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2furthest_edge_query.h:31:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2hausdorff_distance_query.h:23,
                 from s2/s2hausdorff_distance_query.cc:16:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2min_distance_targets.h:32,
                 from ../src/s2/s2hausdorff_distance_query.h:25:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from s2/s2latlng_rect.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_edge_query_base.h:42,
                 from ../src/s2/s2furthest_edge_query.h:33:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2furthest_edge_query.h:35:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2latlng.h:32,
                 from ../src/s2/s2latlng_rect_bounder.h:21,
                 from s2/s2latlng_rect_bounder.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from ../src/s2/s2latlng_rect_bounder.h:22:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from s2/s2latlng_rect_bounder.cc:30:
../src/s2/s2pointutil.h: In function ‘S2Point S2::Origin()’:
../src/s2/s2pointutil.h:98:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 | inline S2Point Origin() {
      |                       ^
s2/s2latlng_rect_bounder.cc: In static member function ‘static S2LatLng S2LatLngRectBounder::MaxErrorForTests()’:
s2/s2latlng_rect_bounder.cc:344:48: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 | S2LatLng S2LatLngRectBounder::MaxErrorForTests() {
      |                                                ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2latlng.h:31:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
s2/s2latlng_rect_bounder.cc:58:37:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2/s2latlng_rect_bounder.cc: In member function ‘void S2LatLngRectBounder::AddLatLng(const S2LatLng&)’:
s2/s2latlng_rect_bounder.cc:42:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   42 |   AddInternal(b_latlng.ToPoint(), b_latlng);
      |               ~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect_bounder.cc: In member function ‘void S2LatLngRectBounder::AddInternal(const S2Point&, const S2LatLng&)’:
s2/s2latlng_rect_bounder.cc:58:44: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 |     Vector3_d n = (a_ - b).CrossProd(a_ + b);  // N = 2 * (A x B)
      |                                            ^
s2/s2latlng_rect_bounder.cc:58:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 |     Vector3_d n = (a_ - b).CrossProd(a_ + b);  // N = 2 * (A x B)
      |                   ~~~~^~~~
s2/s2latlng_rect_bounder.cc:58:44: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 |     Vector3_d n = (a_ - b).CrossProd(a_ + b);  // N = 2 * (A x B)
      |                                            ^
s2/s2latlng_rect_bounder.cc:91:77: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   91 |                                                     b_latlng.lng().radians());
      |                                                                             ^
s2/s2latlng_rect_bounder.cc:105:77: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  105 |                                                     b_latlng.lat().radians());
      |                                                                             ^
s2/s2latlng_rect_bounder.cc:112:49: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  112 |       Vector3_d m = n.CrossProd(S2Point(0, 0, 1));
      |                                                 ^
s2/s2latlng_rect_bounder.cc:163:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  163 |         double lat_budget_z = 0.5 * (a_ - b).Norm() * sin(max_lat);
      |                                     ~~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s2latlng_rect.h: In static member function ‘static S2LatLngRect S2LatLngRect::Full()’:
../src/s2/s2latlng_rect.h:407:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                       ~~~~~~~^~
../src/s2/s2latlng_rect.h:407:41: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                                  ~~~~~~~^~
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                     ^~~~~~~
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:21: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                     ^~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::FromPointPair(double, double)’:
../src/s2/r1interval.h:62:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 |   static R1Interval FromPointPair(double p1, double p2) {
      |                     ^~~~~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2latlng_rect_bounder.cc: In member function ‘S2LatLngRect S2LatLngRectBounder::GetBound() const’:
s2/s2latlng_rect_bounder.cc:209:71: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  209 |   const S2LatLng kExpansion = S2LatLng::FromRadians(2 * DBL_EPSILON, 0);
      |                                                                       ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2latlng_rect.h: In static member function ‘static S2LatLngRect S2LatLngRect::Full()’:
../src/s2/s2latlng_rect.h:407:41: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                                  ~~~~~~~^~
../src/s2/s2latlng_rect.h:407:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                       ~~~~~~~^~
s2/s2latlng_rect_bounder.cc: In member function ‘S2LatLngRect S2LatLngRectBounder::GetBound() const’:
s2/s2latlng_rect_bounder.cc:209:52: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  209 |   const S2LatLng kExpansion = S2LatLng::FromRadians(2 * DBL_EPSILON, 0);
      |                               ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2latlng_rect_bounder.cc: In member function ‘void S2LatLngRectBounder::AddInternal(const S2Point&, const S2LatLng&)’:
s2/s2latlng_rect_bounder.cc:58:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 |     Vector3_d n = (a_ - b).CrossProd(a_ + b);  // N = 2 * (A x B)
      |                                           ^
s2/s2latlng_rect_bounder.cc:99:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   99 |         lng_ab = S1Interval::Full();
      |                  ~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect_bounder.cc:104:52: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  104 |       R1Interval lat_ab = R1Interval::FromPointPair(a_latlng_.lat().radians(),
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
  105 |                                                     b_latlng.lat().radians());
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect_bounder.cc:163:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  163 |         double lat_budget_z = 0.5 * (a_ - b).Norm() * sin(max_lat);
      |                                           ^
s2/s2latlng_rect_bounder.cc:58:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   58 |     Vector3_d n = (a_ - b).CrossProd(a_ + b);  // N = 2 * (A x B)
      |                   ~~~~~~~~~~~~~~~~~~^~~~~~~~
s2/s2latlng_rect_bounder.cc:45:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   45 | void S2LatLngRectBounder::AddInternal(const S2Point& b,
      |      ^~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2latlng_rect.h:30:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2/s2latlng_rect_bounder.cc: In member function ‘void S2LatLngRectBounder::AddLatLng(const S2LatLng&)’:
s2/s2latlng_rect_bounder.cc:41:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   41 | void S2LatLngRectBounder::AddLatLng(const S2LatLng& b_latlng) {
      |      ^~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2min_distance_targets.h:35:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2min_distance_targets.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
s2/s2latlng_rect_bounder.cc: In static member function ‘static S2LatLng S2LatLngRectBounder::MaxErrorForTests()’:
s2/s2latlng_rect_bounder.cc:344:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 | S2LatLng S2LatLngRectBounder::MaxErrorForTests() {
      |          ^~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s1chord_angle.h:31,
                 from s2/s2latlng_rect.cc:30:
../src/s2/s2pointutil.h: In function ‘S2Point S2::Origin()’:
../src/s2/s2pointutil.h:98:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 | inline S2Point Origin() {
      |                       ^
In file included from ../src/s2/s2cell.h:27,
                 from s2/s2latlng_rect.cc:33:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2latlng.cc -o s2/s2latlng.o
In file included from ../src/s2/s2edge_crossings.h:48,
                 from s2/s2latlng_rect.cc:35:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from s2/s2latlng_rect.cc:36:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
s2/s2latlng_rect.cc: In member function ‘S2LatLng S2LatLngRect::GetVertex(int) const’:
s2/s2latlng_rect.cc:77:41: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   77 | S2LatLng S2LatLngRect::GetVertex(int k) const {
      |                                         ^~~~~
s2/s2latlng_rect.cc: In member function ‘S2Point S2LatLngRect::GetCentroid() const’:
s2/s2latlng_rect.cc:99:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   99 | S2Point S2LatLngRect::GetCentroid() const {
      |                                     ^~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:505:20:   required from ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’
../src/s2/s2coords.h:389:35:   required from here
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static S2LatLngRect S2LatLngRect::FromCenterSize(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng_rect.cc:49:41: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   49 |   return FromPoint(center).Expanded(0.5 * size);
      |                                     ~~~~^~~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator*(double, const S2LatLng&)’:
../src/s2/s2latlng.h:269:21: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  269 |   return S2LatLng(m * a.coords_);
      |                   ~~^~~~~~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static S2LatLngRect S2LatLngRect::FromPointPair(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng_rect.cc:67:48: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   67 |   return S2LatLngRect(R1Interval::FromPointPair(p1.lat().radians(),
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
   68 |                                                 p2.lat().radians()),
      |                                                 ~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:69:48: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   69 |                       S1Interval::FromPointPair(p1.lng().radians(),
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
   70 |                                                 p2.lng().radians()));
      |                                                 ~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::FromPointPair(double, double)’:
../src/s2/r1interval.h:62:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 |   static R1Interval FromPointPair(double p1, double p2) {
      |                     ^~~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLng S2LatLngRect::GetVertex(int) const’:
s2/s2latlng_rect.cc:77:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   77 | S2LatLng S2LatLngRect::GetVertex(int k) const {
      |          ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2Point S2LatLngRect::GetCentroid() const’:
s2/s2latlng_rect.cc:99:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   99 | S2Point S2LatLngRect::GetCentroid() const {
      |         ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::Expanded(const S2LatLng&) const’:
s2/s2latlng_rect.cc:216:56: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R1Interval lat = lat_.Expanded(margin.lat().radians());
      |                                                        ^
s2/s2latlng_rect.cc:217:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  217 |   S1Interval lng = lng_.Expanded(margin.lng().radians());
      |                                                        ^
s2/s2latlng_rect.cc:219:39: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  219 |   return S2LatLngRect(lat.Intersection(FullLat()), lng);
      |                       ~~~~~~~~~~~~~~~~^~~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                     ^~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::PolarClosure() const’:
s2/s2latlng_rect.cc:224:47: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  224 |     return S2LatLngRect(lat_, S1Interval::Full());
      |                               ~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::Union(const S2LatLngRect&) const’:
s2/s2latlng_rect.cc:230:33: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  230 |   return S2LatLngRect(lat_.Union(other.lat_),
      |                       ~~~~~~~~~~^~~~~~~~~~~~
s2/s2latlng_rect.cc:231:33: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  231 |                       lng_.Union(other.lng_));
      |                       ~~~~~~~~~~^~~~~~~~~~~~
../src/s2/r1interval.h: In member function ‘R1Interval R1Interval::Union(const R1Interval&) const’:
../src/s2/r1interval.h:188:14: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  188 |   R1Interval Union(const R1Interval& y) const {
      |              ^~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::Intersection(const S2LatLngRect&) const’:
s2/s2latlng_rect.cc:236:48: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  236 |   S1Interval lng = lng_.Intersection(other.lng_);
      |                                                ^
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::ExpandedByDistance(S1Angle) const’:
s2/s2latlng_rect.cc:254:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |       r = r.Union(S2Cap(GetVertex(k).ToPoint(), radius).GetRectBound());
      |                         ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:254:34: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |       r = r.Union(S2Cap(GetVertex(k).ToPoint(), radius).GetRectBound());
      |                         ~~~~~~~~~^~~
s2/s2latlng_rect.cc:254:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |       r = r.Union(S2Cap(GetVertex(k).ToPoint(), radius).GetRectBound());
      |                         ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:262:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  262 |         lat().lo() <= FullLat().lo() && lng().is_full() ?
      |                       ~~~~~~~^~
s2/s2latlng_rect.cc:283:59: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  283 |     S1Interval lng_result = lng().Expanded(-max_lng_margin);
      |                                                           ^
s2/s2latlng_rect.cc: In member function ‘virtual S2Cap S2LatLngRect::GetCapBound() const’:
s2/s2latlng_rect.cc:317:38: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  317 |     S2Cap mid_cap(GetCenter().ToPoint(), S1Angle::Zero());
      |                   ~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:317:28: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  317 |     S2Cap mid_cap(GetCenter().ToPoint(), S1Angle::Zero());
      |                   ~~~~~~~~~^~
s2/s2latlng_rect.cc:317:38: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  317 |     S2Cap mid_cap(GetCenter().ToPoint(), S1Angle::Zero());
      |                   ~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:319:33: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  319 |       mid_cap.AddPoint(GetVertex(k).ToPoint());
      |                        ~~~~~~~~~^~~
s2/s2latlng_rect.cc:319:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  319 |       mid_cap.AddPoint(GetVertex(k).ToPoint());
      |                        ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In static member function ‘static bool S2LatLngRect::IntersectsLngEdge(const S2Point&, const S2Point&, const R1Interval&, double)’:
s2/s2latlng_rect.cc:390:34: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  390 |       a, b, S2LatLng::FromRadians(lat.lo(), lng).ToPoint(),
      |             ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:390:57: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  390 |       a, b, S2LatLng::FromRadians(lat.lo(), lng).ToPoint(),
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:391:28: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  391 |       S2LatLng::FromRadians(lat.hi(), lng).ToPoint()) > 0;
      |       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:391:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  391 |       S2LatLng::FromRadians(lat.hi(), lng).ToPoint()) > 0;
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In static member function ‘static bool S2LatLngRect::IntersectsLatEdge(const S2Point&, const S2Point&, double, const S1Interval&)’:
s2/s2latlng_rect.cc:404:19: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  404 |   if (z[2] < 0) z = -z;
      |                 ~~^~~~
s2/s2latlng_rect.cc:408:67: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  408 |   Vector3_d y = S2::RobustCrossProd(z, S2Point(0, 0, 1)).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:409:30: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  409 |   Vector3_d x = y.CrossProd(z);
      |                              ^
s2/s2latlng_rect.cc:432:40: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  432 |       atan2(b.DotProd(y), b.DotProd(x)));
      |                                        ^
s2/s2latlng_rect.cc:436:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  436 |     S2Point isect = x * cos_theta + y * sin_theta;
      |                     ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In member function ‘bool S2LatLngRect::Intersects(const S2Cell&) const’:
s2/s2latlng_rect.cc:453:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  453 |   if (Contains(cell.GetCenterRaw())) return true;
      |                ~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:454:30: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  454 |   if (cell.Contains(GetCenter().ToPoint())) return true;
      |                     ~~~~~~~~~^~
s2/s2latlng_rect.cc:454:40: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  454 |   if (cell.Contains(GetCenter().ToPoint())) return true;
      |                     ~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:469:32: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |     if (cell.Contains(GetVertex(i).ToPoint())) return true;
      |                       ~~~~~~~~~^~~
s2/s2latlng_rect.cc:469:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |     if (cell.Contains(GetVertex(i).ToPoint())) return true;
      |                       ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:478:69: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  478 |         cell_ll[i].lng().radians(), cell_ll[(i+1)&3].lng().radians());
      |                                                                     ^
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertex(int) const’:
../src/s2/s2cell.h:112:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  112 |   S2Point GetVertex(int k) const { return GetVertexRaw(k).Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertexRaw(int) const’:
../src/s2/s2cell.h:114:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                   ~~~~~~~~~~~~~^~~
../src/s2/s2cell.h:114:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                                   ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                ^~~~~~
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S1Angle S2LatLngRect::GetDistance(const S2LatLngRect&) const’:
s2/s2latlng_rect.cc:525:74: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  525 |   S1Interval lo_hi = S1Interval::FromPointPair(a.lng().lo(), b.lng().hi());
      |                                                                          ^
s2/s2latlng_rect.cc:540:54: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  540 |   S2Point a_lo = S2LatLng(a.lat_lo(), a_lng).ToPoint();
      |                                                      ^
s2/s2latlng_rect.cc: In member function ‘S1Angle S2LatLngRect::GetDistance(const S2LatLng&) const’:
s2/s2latlng_rect.cc:572:37: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  572 |   S2Point lo = S2LatLng::FromRadians(a.lat().lo(), a_lng).ToPoint();
      |                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:572:67: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  572 |   S2Point lo = S2LatLng::FromRadians(a.lat().lo(), a_lng).ToPoint();
      |                                                                   ^
s2/s2latlng_rect.cc:573:37: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  573 |   S2Point hi = S2LatLng::FromRadians(a.lat().hi(), a_lng).ToPoint();
      |                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:573:67: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  573 |   S2Point hi = S2LatLng::FromRadians(a.lat().hi(), a_lng).ToPoint();
      |                                                                   ^
s2/s2latlng_rect.cc: In static member function ‘static S1Angle S2LatLngRect::GetDirectedHausdorffDistance(double, const R1Interval&, const R1Interval&)’:
s2/s2latlng_rect.cc:638:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  638 |   S2Point b_lo = S2LatLng::FromRadians(b.lo(), b_lng).ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:638:63: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  638 |   S2Point b_lo = S2LatLng::FromRadians(b.lo(), b_lng).ToPoint();
      |                                                               ^
s2/s2latlng_rect.cc:639:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  639 |   S2Point b_hi = S2LatLng::FromRadians(b.hi(), b_lng).ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:639:63: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  639 |   S2Point b_hi = S2LatLng::FromRadians(b.hi(), b_lng).ToPoint();
      |                                                               ^
s2/s2latlng_rect.cc:646:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  646 |   S2Point a_lo = S2LatLng::FromRadians(a.lo(), 0).ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
s2/s2latlng_rect.cc:646:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  646 |   S2Point a_lo = S2LatLng::FromRadians(a.lo(), 0).ToPoint();
      |                                                           ^
s2/s2latlng_rect.cc:647:39: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  647 |   S2Point a_hi = S2LatLng::FromRadians(a.hi(), 0).ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
s2/s2latlng_rect.cc:647:59: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  647 |   S2Point a_hi = S2LatLng::FromRadians(a.hi(), 0).ToPoint();
      |                                                           ^
s2/s2latlng_rect.cc: In static member function ‘static S2Point S2LatLngRect::GetBisectorIntersection(const R1Interval&, double)’:
s2/s2latlng_rect.cc:688:20: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  688 |     ortho_bisector = S2LatLng::FromRadians(lat_center - M_PI_2, lng);
      |     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:694:65: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  694 |   return S2::RobustCrossProd(ortho_lng, ortho_bisector.ToPoint());
      |                                                                 ^
s2/s2latlng_rect.cc: In function ‘std::ostream& operator<<(std::ostream&, const S2LatLngRect&)’:
s2/s2latlng_rect.cc:735:29: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  735 |   return os << "[Lo" << r.lo() << ", Hi" << r.hi() << "]";
      |                         ~~~~^~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/s2latlng_rect.cc:736:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  736 | }
      | ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static S2LatLngRect S2LatLngRect::FromPointPair(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng_rect.cc:67:48: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   67 |   return S2LatLngRect(R1Interval::FromPointPair(p1.lat().radians(),
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
   68 |                                                 p2.lat().radians()),
      |                                                 ~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static S2Point S2LatLngRect::GetBisectorIntersection(const R1Interval&, double)’:
s2/s2latlng_rect.cc:688:43: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  688 |     ortho_bisector = S2LatLng::FromRadians(lat_center - M_PI_2, lng);
      |                      ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::PolarClosure() const’:
s2/s2latlng_rect.cc:224:47: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  224 |     return S2LatLngRect(lat_, S1Interval::Full());
      |                               ~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In static member function ‘static bool S2LatLngRect::IntersectsLngEdge(const S2Point&, const S2Point&, const R1Interval&, double)’:
s2/s2latlng_rect.cc:390:34: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  390 |       a, b, S2LatLng::FromRadians(lat.lo(), lng).ToPoint(),
      |             ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::Expanded(const S2LatLng&) const’:
s2/s2latlng_rect.cc:216:33: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R1Interval lat = lat_.Expanded(margin.lat().radians());
      |                    ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc: In function ‘std::ostream& operator<<(std::ostream&, const S2LatLngRect&)’:
s2/s2latlng_rect.cc:735:29: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  735 |   return os << "[Lo" << r.lo() << ", Hi" << r.hi() << "]";
      |                         ~~~~^~
s2/s2latlng_rect.cc: In static member function ‘static bool S2LatLngRect::IntersectsLatEdge(const S2Point&, const S2Point&, double, const S1Interval&)’:
s2/s2latlng_rect.cc:404:22: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  404 |   if (z[2] < 0) z = -z;
      |                      ^
../src/s2/s2latlng.h: In function ‘S2LatLng operator*(double, const S2LatLng&)’:
../src/s2/s2latlng.h:269:25: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  269 |   return S2LatLng(m * a.coords_);
      |                         ^~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static S2LatLngRect S2LatLngRect::FromCenterSize(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng_rect.cc:49:43: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   49 |   return FromPoint(center).Expanded(0.5 * size);
      |                                           ^~~~
s2/s2latlng_rect.cc: In static member function ‘static S2LatLngRect S2LatLngRect::FromPointPair(const S2LatLng&, const S2LatLng&)’:
s2/s2latlng_rect.cc:59:14: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   59 | S2LatLngRect S2LatLngRect::FromPointPair(const S2LatLng& p1,
      |              ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLng S2LatLngRect::GetVertex(int) const’:
s2/s2latlng_rect.cc:77:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   77 | S2LatLng S2LatLngRect::GetVertex(int k) const {
      |          ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘virtual S2Cap S2LatLngRect::GetCapBound() const’:
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  291 | S2Cap S2LatLngRect::GetCapBound() const {
      |       ^~~~~~~~~~~~
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:291:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:317:28: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  317 |     S2Cap mid_cap(GetCenter().ToPoint(), S1Angle::Zero());
      |                   ~~~~~~~~~^~
s2/s2latlng_rect.cc:317:38: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  317 |     S2Cap mid_cap(GetCenter().ToPoint(), S1Angle::Zero());
      |                   ~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:319:33: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  319 |       mid_cap.AddPoint(GetVertex(k).ToPoint());
      |                        ~~~~~~~~~^~~
s2/s2latlng_rect.cc:319:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  319 |       mid_cap.AddPoint(GetVertex(k).ToPoint());
      |                        ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In member function ‘S2LatLng S2LatLngRect::GetSize() const’:
s2/s2latlng_rect.cc:88:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   88 | S2LatLng S2LatLngRect::GetSize() const {
      |          ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2Point S2LatLngRect::GetCentroid() const’:
s2/s2latlng_rect.cc:99:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   99 | S2Point S2LatLngRect::GetCentroid() const {
      |         ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::Expanded(const S2LatLng&) const’:
s2/s2latlng_rect.cc:215:14: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  215 | S2LatLngRect S2LatLngRect::Expanded(const S2LatLng& margin) const {
      |              ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In member function ‘S2LatLngRect S2LatLngRect::ExpandedByDistance(S1Angle) const’:
s2/s2latlng_rect.cc:244:14: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  244 | S2LatLngRect S2LatLngRect::ExpandedByDistance(S1Angle distance) const {
      |              ^~~~~~~~~~~~
s2/s2latlng_rect.cc:244:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:244:14: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:244:14: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:244:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:254:34: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |       r = r.Union(S2Cap(GetVertex(k).ToPoint(), radius).GetRectBound());
      |                         ~~~~~~~~~^~~
s2/s2latlng_rect.cc:254:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  254 |       r = r.Union(S2Cap(GetVertex(k).ToPoint(), radius).GetRectBound());
      |                         ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:283:43: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  283 |     S1Interval lng_result = lng().Expanded(-max_lng_margin);
      |                             ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static bool S2LatLngRect::IntersectsLngEdge(const S2Point&, const S2Point&, const R1Interval&, double)’:
s2/s2latlng_rect.cc:383:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  383 | bool S2LatLngRect::IntersectsLngEdge(const S2Point& a, const S2Point& b,
      |      ^~~~~~~~~~~~
s2/s2latlng_rect.cc: In static member function ‘static bool S2LatLngRect::IntersectsLatEdge(const S2Point&, const S2Point&, double, const S1Interval&)’:
s2/s2latlng_rect.cc:394:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  394 | bool S2LatLngRect::IntersectsLatEdge(const S2Point& a, const S2Point& b,
      |      ^~~~~~~~~~~~
s2/s2latlng_rect.cc:394:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:394:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:403:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  403 |   Vector3_d z = S2::RobustCrossProd(a, b).Normalize();
      |                 ~~~~~~~~~~~~~~~~~~~^~~~~~
s2/s2latlng_rect.cc:430:50: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  430 |   S1Interval ab_theta = S1Interval::FromPointPair(
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~^
  431 |       atan2(a.DotProd(y), a.DotProd(x)),
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~          
  432 |       atan2(b.DotProd(y), b.DotProd(x)));
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~          
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc: In member function ‘S1Angle S2LatLngRect::GetDistance(const S2LatLngRect&) const’:
s2/s2latlng_rect.cc:495:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 | S1Angle S2LatLngRect::GetDistance(const S2LatLngRect& other) const {
      |         ^~~~~~~~~~~~
s2/s2latlng_rect.cc:495:9: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:495:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:525:47: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  525 |   S1Interval lo_hi = S1Interval::FromPointPair(a.lng().lo(), b.lng().hi());
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2latlng_rect.cc:540:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  540 |   S2Point a_lo = S2LatLng(a.lat_lo(), a_lng).ToPoint();
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc: In member function ‘bool S2LatLngRect::Intersects(const S2Cell&) const’:
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  447 | bool S2LatLngRect::Intersects(const S2Cell& cell) const {
      |      ^~~~~~~~~~~~
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:447:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2latlng_rect.cc:454:30: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  454 |   if (cell.Contains(GetCenter().ToPoint())) return true;
      |                     ~~~~~~~~~^~
s2/s2latlng_rect.cc:454:40: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  454 |   if (cell.Contains(GetCenter().ToPoint())) return true;
      |                     ~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:469:32: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |     if (cell.Contains(GetVertex(i).ToPoint())) return true;
      |                       ~~~~~~~~~^~~
s2/s2latlng_rect.cc:469:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |     if (cell.Contains(GetVertex(i).ToPoint())) return true;
      |                       ~~~~~~~~~~~~~~~~~~~~^~
s2/s2latlng_rect.cc:477:52: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  477 |     S1Interval edge_lng = S1Interval::FromPointPair(
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~^
  478 |         cell_ll[i].lng().radians(), cell_ll[(i+1)&3].lng().radians());
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2hausdorff_distance_query.cc: In function ‘void {anonymous}::UpdateMaxDistance(const S2Point&, S2ClosestEdgeQuery&, S1ChordAngle&, S2Point&, S2Point&)’:
s2/s2hausdorff_distance_query.cc:56:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   56 |     source_point = closest_edge_query.Project(point, closest_edge);
      |     ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2lax_loop_shape.cc -o s2/s2lax_loop_shape.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2latlng.h:32,
                 from s2/s2latlng.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
s2/s2latlng.cc: In member function ‘S2Point S2LatLng::ToPoint() const’:
s2/s2latlng.cc:62:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 | S2Point S2LatLng::ToPoint() const {
      |                             ^~~~~
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2latlng.h:31:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2/s2latlng.cc: In member function ‘S2LatLng S2LatLng::Normalized() const’:
s2/s2latlng.cc:55:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   55 | S2LatLng S2LatLng::Normalized() const {
      |          ^~~~~~~~
s2/s2latlng.cc: In member function ‘S2Point S2LatLng::ToPoint() const’:
s2/s2latlng.cc:62:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 | S2Point S2LatLng::ToPoint() const {
      |         ^~~~~~~~
s2/s2latlng.cc: In member function ‘std::string S2LatLng::ToStringInDegrees() const’:
s2/s2latlng.cc:106:28: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  106 |   S2LatLng pt = Normalized();
      |                            ^
s2/s2latlng.cc: In member function ‘S2Point S2LatLng::ToPoint() const’:
s2/s2latlng.cc:62:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   62 | S2Point S2LatLng::ToPoint() const {
      |         ^~~~~~~~
s2/s2latlng.cc: In member function ‘std::string S2LatLng::ToStringInDegrees() const’:
s2/s2latlng.cc:105:8: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  105 | string S2LatLng::ToStringInDegrees() const {
      |        ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2lax_polygon_shape.cc -o s2/s2lax_polygon_shape.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2loop.h:34,
                 from ../src/s2/s2lax_loop_shape.h:41,
                 from s2/s2lax_loop_shape.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2latlng_rect.h:31,
                 from ../src/s2/s2loop.h:39:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2lax_polyline_shape.cc -o s2/s2lax_polyline_shape.o
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2loop_measures.cc -o s2/s2loop_measures.o
In file included from ../src/s2/encoded_s2point_vector.h:30,
                 from ../src/s2/s2lax_polygon_shape.h:31,
                 from s2/s2lax_polygon_shape.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2loop.cc -o s2/s2loop.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from ../src/s2/s2lax_polygon_shape.h:36:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/encoded_s2point_vector.h:30,
                 from ../src/s2/s2lax_polyline_shape.h:28,
                 from s2/s2lax_polyline_shape.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2polyline.h:34,
                 from ../src/s2/s2lax_polyline_shape.h:32:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2loop_measures.h:33,
                 from s2/s2loop_measures.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from ../src/s2/s2loop_measures.h:34:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s1chord_angle.h:31,
                 from ../src/s2/s2edge_crossings.h:41:
../src/s2/s2pointutil.h: In function ‘S2Point S2::Origin()’:
../src/s2/s2pointutil.h:98:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 | inline S2Point Origin() {
      |                       ^
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2loop.h:34,
                 from s2/s2loop.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
s2/s2loop_measures.cc: In function ‘S2Point S2::GetCentroid(S2PointLoopSpan)’:
s2/s2loop_measures.cc:265:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  265 | S2Point GetCentroid(S2PointLoopSpan loop) {
      |                                         ^
s2/s2lax_polygon_shape.cc: In member function ‘bool S2LaxPolygonShape::Init(Decoder*)’:
s2/s2lax_polygon_shape.cc:213:20: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 |       vertices_[i] = vertices[i];
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/s2loop_measures.h: In instantiation of ‘T S2::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&)) [with T = S2Point]’:
s2/s2loop_measures.cc:270:28:   required from here
../src/s2/s2loop_measures.h:207:3: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  207 | T GetSurfaceIntegral(S2PointLoopSpan loop,
      |   ^~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/s2loop_measures.h: In function ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = double; TAccumulator = KahanSum<double>]’:
../src/s2/s2loop_measures.h:321:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  321 |         origin = S2::RobustCrossProd(loop[0], loop[i]).Normalize();
      |         ^~~~~~
../src/s2/s2loop_measures.h:340:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  340 |         origin = loop[0].CrossProd(old_origin);
      |                  ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |           ^~~~~~~~~
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2loop_measures.cc: In function ‘S2Point S2::GetCentroid(S2PointLoopSpan)’:
s2/s2loop_measures.cc:265:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  265 | S2Point GetCentroid(S2PointLoopSpan loop) {
      |         ^~~~~~~~~~~
../src/s2/s2loop_measures.h: In function ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = S2Point; TAccumulator = S2Point]’:
../src/s2/s2loop_measures.h:340:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  340 |         origin = loop[0].CrossProd(old_origin);
      |                  ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
../src/s2/s2loop_measures.h:346:21: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  346 |         sum += f_tri(loop[0], old_origin, origin);
      |                ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s2latlng_rect.h:31,
                 from ../src/s2/s2loop.h:39:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2loop_measures.h:34,
                 from ../src/s2/s2loop.h:40:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2loop.h: In static member function ‘static S2Point S2Loop::kEmptyVertex()’:
../src/s2/s2loop.h:690:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  690 | inline S2Point S2Loop::kEmptyVertex() { return S2Point(0, 0, 1); }
      |                                     ^
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = double; TAccumulator = KahanSum<double>]’ at ../src/s2/s2loop_measures.h:313:26:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
../src/s2/s2loop_measures.h: In function ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = double; TAccumulator = KahanSum<double>]’:
../src/s2/s2loop_measures.h:321:65: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  321 |         origin = S2::RobustCrossProd(loop[0], loop[i]).Normalize();
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = double; TAccumulator = KahanSum<double>]’ at ../src/s2/s2loop_measures.h:322:31:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
../src/s2/s2loop_measures.h: In function ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = double; TAccumulator = KahanSum<double>]’:
../src/s2/s2loop_measures.h:257:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  257 | void internal::GetSurfaceIntegral(S2PointLoopSpan loop,
      |      ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = S2Point; TAccumulator = S2Point]’ at ../src/s2/s2loop_measures.h:313:26:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
../src/s2/s2loop_measures.h: In function ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = S2Point; TAccumulator = S2Point]’:
../src/s2/s2loop_measures.h:321:65: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  321 |         origin = S2::RobustCrossProd(loop[0], loop[i]).Normalize();
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = S2Point; TAccumulator = S2Point]’ at ../src/s2/s2loop_measures.h:322:31:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
../src/s2/s2loop_measures.h: In function ‘void S2::internal::GetSurfaceIntegral(S2PointLoopSpan, T (*)(const S2Point&, const S2Point&, const S2Point&), TAccumulator&) [with T = S2Point; TAccumulator = S2Point]’:
../src/s2/s2loop_measures.h:257:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  257 | void internal::GetSurfaceIntegral(S2PointLoopSpan loop,
      |      ^~~~~~~~
s2/s2lax_polyline_shape.cc: In member function ‘bool S2LaxPolylineShape::Init(Decoder*)’:
s2/s2lax_polyline_shape.cc:87:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   87 |     vertices_[i] = vertices[i];
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2max_distance_targets.cc -o s2/s2max_distance_targets.o
In file included from s2/s2loop.cc:46:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2measures.cc -o s2/s2measures.o
In file included from ../src/s2/s2closest_edge_query.h:35,
                 from s2/s2loop.cc:49:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2memory_tracker.cc -o s2/s2memory_tracker.o
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
s2/s2loop.cc: In member function ‘bool S2Loop::FindValidationErrorNoIndex(S2Error*) const’:
s2/s2loop.cc:234:22: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  234 |     if (vertex(i) == -vertex(i + 1)) {
      |                      ^~~~~~~~~~~~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2edge_crossings.h: In function ‘bool S2::AngleContainsVertex(const S2Point&, const S2Point&, const S2Point&)’:
../src/s2/s2edge_crossings.h:235:40: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  235 |   return !s2pred::OrderedCCW(S2::RefDir(b), c, a, b);
      |                              ~~~~~~~~~~^~~
s2/s2loop.cc: In member function ‘void S2Loop::InitBound()’:
s2/s2loop.cc:312:72: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  312 |     b = S2LatLngRect(R1Interval(b.lat().lo(), M_PI_2), S1Interval::Full());
      |                                                        ~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h: In static member function ‘static S2LatLngRect S2LatLngRect::Full()’:
../src/s2/s2latlng_rect.h:407:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                       ~~~~~~~^~
../src/s2/s2latlng_rect.h:407:41: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                                  ~~~~~~~^~
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                     ^~~~~~~
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:21: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                     ^~~~~~~
../src/s2/s2loop.h: In member function ‘virtual S2Shape::ReferencePoint S2Loop::Shape::GetReferencePoint() const’:
../src/s2/s2loop.h:496:67: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  496 |       return ReferencePoint(S2::Origin(), loop_->contains_origin());
      |                                                                   ^
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertexRaw(int) const’:
../src/s2/s2cell.h:114:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                   ~~~~~~~~~~~~~^~~
../src/s2/s2cell.h:114:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                                   ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                ^~~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2loop.cc: In member function ‘void S2Loop::Invert()’:
s2/s2loop.cc:407:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |     vertices_[0] = is_full() ? kEmptyVertex() : kFullVertex();
      |                    ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2loop.cc: In member function ‘bool S2Loop::BoundaryApproxIntersects(const MutableS2ShapeIndex::Iterator&, const S2Cell&) const’:
s2/s2loop.cc:541:56: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  541 |   R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                                                        ^
s2/s2loop.cc: In member function ‘bool S2Loop::BruteForceContains(const S2Point&) const’:
s2/s2loop.cc:599:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  599 |   S2Point origin = S2::Origin();
      |                               ^
../src/s2/s2latlng_rect.h: In member function ‘bool S2LatLngRect::is_full() const’:
../src/s2/s2latlng_rect.h:423:25: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  423 |   return lat_ == FullLat() && lng_.is_full();
      |                  ~~~~~~~^~
s2/s2loop.cc: In static member function ‘static std::unique_ptr<S2Loop> S2Loop::MakeRegularLoop(const Matrix3x3_d&, S1Angle, int)’:
s2/s2loop.cc:1496:57: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1496 |     vertices.push_back(S2::FromFrame(frame, p).Normalize());
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h: In static member function ‘static S2LatLngRect S2LatLngRect::Full()’:
../src/s2/s2latlng_rect.h:407:41: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                                  ~~~~~~~^~
../src/s2/s2latlng_rect.h:407:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                       ~~~~~~~^~
s2/s2loop.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/s2loop.cc:1516:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1516 | }
      | ^
../src/s2/s2latlng_rect.h: In member function ‘bool S2LatLngRect::is_full() const’:
../src/s2/s2latlng_rect.h:423:25: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  423 |   return lat_ == FullLat() && lng_.is_full();
      |                  ~~~~~~~^~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2loop.cc: In member function ‘bool S2Loop::FindValidationErrorNoIndex(S2Error*) const’:
s2/s2loop.cc:234:35: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  234 |     if (vertex(i) == -vertex(i + 1)) {
      |                                   ^
s2/s2loop.cc: In member function ‘bool S2Loop::BoundaryApproxIntersects(const MutableS2ShapeIndex::Iterator&, const S2Cell&) const’:
s2/s2loop.cc:541:46: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  541 |   R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
In file included from ../src/s2/s2measures.h:24,
                 from s2/s2measures.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from s2/s2measures.cc:23:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1chord_angle.h:31,
                 from ../src/s2/s2edge_crossings.h:41:
../src/s2/s2pointutil.h: In function ‘S2Point S2::Origin()’:
../src/s2/s2pointutil.h:98:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 | inline S2Point Origin() {
      |                       ^
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2max_distance_targets.h:27,
                 from s2/s2max_distance_targets.cc:16:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2max_distance_targets.h:30:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
s2/s2loop.cc: In member function ‘void S2Loop::InitBound()’:
s2/s2loop.cc:312:72: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  312 |     b = S2LatLngRect(R1Interval(b.lat().lo(), M_PI_2), S1Interval::Full());
      |                                                        ~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2max_distance_targets.h:31:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2max_distance_targets.h:32:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2metrics.cc -o s2/s2metrics.o
s2/s2measures.cc: In function ‘double S2::Angle(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2measures.cc:41:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   41 |   return RobustCrossProd(a, b).Angle(RobustCrossProd(c, b));
      |          ~~~~~~~~~~~~~~~^~~~~~
../src/s2/util/math/vector.h: In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
s2/s2measures.cc: In function ‘double S2::TurnAngle(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2measures.cc:52:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   52 |   double angle = RobustCrossProd(a, b).Angle(RobustCrossProd(b, c));
      |                  ~~~~~~~~~~~~~~~^~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2measures.cc: In function ‘double S2::GirardArea(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2measures.cc:154:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  154 |   Vector3_d ab = RobustCrossProd(a, b);
      |                  ~~~~~~~~~~~~~~~^~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2measures.cc: In function ‘double S2::StableAngle(S2Point, S2Point)’:
s2/s2measures.cc:83:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   83 |   return 2 * atan2((a - b).Norm(), (a + b).Norm());
      |                                         ^
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘double S2::Angle(const S2Point&, const S2Point&, const S2Point&)’ at s2/s2measures.cc:41:37:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
s2/s2measures.cc: In function ‘double S2::Angle(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2measures.cc:38:8: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   38 | double Angle(const S2Point& a, const S2Point& b, const S2Point& c) {
      |        ^~~~~
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘double S2::TurnAngle(const S2Point&, const S2Point&, const S2Point&)’ at s2/s2measures.cc:52:45:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
s2/s2measures.cc: In function ‘double S2::TurnAngle(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2measures.cc:44:8: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   44 | double TurnAngle(const S2Point& a, const S2Point& b, const S2Point& c) {
      |        ^~~~~~~~~
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘double S2::GirardArea(const S2Point&, const S2Point&, const S2Point&)’ at s2/s2measures.cc:157:27:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
s2/s2measures.cc: In function ‘double S2::GirardArea(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2measures.cc:148:8: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  148 | double GirardArea(const S2Point& a, const S2Point& b, const S2Point& c) {
      |        ^~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2min_distance_targets.cc -o s2/s2min_distance_targets.o
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
s2/s2loop.cc: In member function ‘S2Point S2Loop::GetCentroid() const’:
s2/s2loop.cc:430:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  430 | S2Point S2Loop::GetCentroid() const {
      |         ^~~~~~
s2/s2loop.cc: In member function ‘bool S2Loop::BoundaryApproxIntersects(const MutableS2ShapeIndex::Iterator&, const S2Cell&) const’:
s2/s2loop.cc:526:6: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  526 | bool S2Loop::BoundaryApproxIntersects(const MutableS2ShapeIndex::Iterator& it,
      |      ^~~~~~
In member function ‘bool S2Loop::BruteForceContains(const S2Point&) const’,
    inlined from ‘bool S2Loop::BruteForceContains(const S2Point&) const’ at s2/s2loop.cc:594:6:
s2/s2loop.cc:599:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  599 |   S2Point origin = S2::Origin();
      |                    ~~~~~~~~~~^~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2max_distance_targets.cc: In member function ‘virtual S2Cap S2MaxDistancePointTarget::GetCapBound()’:
s2/s2max_distance_targets.cc:42:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   42 |   return S2Cap(-point_, S1ChordAngle::Zero());
      |                ^~~~~~~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2max_distance_targets.h:28:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                            ~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2max_distance_targets.cc: In member function ‘virtual bool S2MaxDistancePointTarget::VisitContainingShapes(const S2ShapeIndex&, const S2DistanceTarget<S2MaxDistance>::ShapeVisitor&)’:
s2/s2max_distance_targets.cc:71:7: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   71 |       -point_, [this, &visitor](S2Shape* shape) {
      |       ^~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2max_distance_targets.cc: In member function ‘virtual S2Cap S2MaxDistanceEdgeTarget::GetCapBound()’:
s2/s2max_distance_targets.cc:86:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   86 |   return S2Cap(-(a_ + b_).Normalize(), S1ChordAngle::FromLength2(r2));
      |                ^~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2max_distance_targets.cc: In member function ‘virtual bool S2MaxDistanceEdgeTarget::VisitContainingShapes(const S2ShapeIndex&, const S2DistanceTarget<S2MaxDistance>::ShapeVisitor&)’:
s2/s2max_distance_targets.cc:123:54: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  123 |   S2MaxDistancePointTarget target((a_ + b_).Normalize());
      |                                   ~~~~~~~~~~~~~~~~~~~^~
In file included from s2/s2max_distance_targets.cc:32:
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:16: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                ^~~~~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::Contains(const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:312:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  312 |           Contains(clipped, target.GetCenter())) {
      |                             ~~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2max_distance_targets.cc: In member function ‘virtual S2Cap S2MaxDistancePointTarget::GetCapBound()’:
s2/s2max_distance_targets.cc:42:17: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   42 |   return S2Cap(-point_, S1ChordAngle::Zero());
      |                 ^~~~~~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:52: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
In file included from ../src/s2/s2coords.h:108,
                 from ../src/s2/s2metrics.h:34,
                 from s2/s2metrics.cc:31:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2coords.h:106:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In constructor ‘S2MaxDistanceEdgeTarget::S2MaxDistanceEdgeTarget(const S2Point&, const S2Point&)’,
    inlined from ‘S2FurthestEdgeQuery::EdgeTarget::EdgeTarget(const S2Point&, const S2Point&)’ at ../src/s2/s2furthest_edge_query.h:412:35,
    inlined from ‘virtual bool S2MaxDistanceShapeIndexTarget::UpdateMinDistance(const S2Point&, const S2Point&, S2MaxDistance*)’ at s2/s2max_distance_targets.cc:213:48:
../src/s2/s2max_distance_targets.h:236:15: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  236 |   b_.Normalize();
      |   ~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2padded_cell.cc -o s2/s2padded_cell.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2min_distance_targets.h:29,
                 from s2/s2min_distance_targets.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2min_distance_targets.h:32:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:418:6: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  418 | bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::MayIntersect(const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:344:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 |     if (Contains(clipped, target.GetCenter())) return true;
      |                           ~~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2point_compression.cc -o s2/s2point_compression.o
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2min_distance_targets.h:35:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2min_distance_targets.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2padded_cell.h:22,
                 from s2/s2padded_cell.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2point_region.cc -o s2/s2point_region.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/s2padded_cell.h:23:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2min_distance_targets.h:30:
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                            ~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
In file included from s2/s2min_distance_targets.cc:33:
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2min_distance_targets.cc: In member function ‘virtual S2Cap S2MinDistanceEdgeTarget::GetCapBound()’:
s2/s2min_distance_targets.cc:75:35: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   75 |   return S2Cap((a_ + b_).Normalize(), S1ChordAngle::FromLength2(r2));
      |                ~~~~~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2min_distance_targets.cc: In member function ‘virtual bool S2MinDistanceEdgeTarget::VisitContainingShapes(const S2ShapeIndex&, const S2DistanceTarget<S2MinDistance>::ShapeVisitor&)’:
s2/s2min_distance_targets.cc:99:54: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   99 |   S2MinDistancePointTarget target((a_ + b_).Normalize());
      |                                   ~~~~~~~~~~~~~~~~~~~^~
In file included from s2/s2min_distance_targets.cc:39:
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:16: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                ^~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/s2min_distance_targets.cc: In member function ‘virtual bool S2MinDistanceCellUnionTarget::VisitContainingShapes(const S2ShapeIndex&, const S2DistanceTarget<S2MinDistance>::ShapeVisitor&)’:
s2/s2min_distance_targets.cc:201:52: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  201 |     S2MinDistancePointTarget target(cell_id.ToPoint());
      |                                     ~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2point_compression.h:52,
                 from s2/s2point_compression.cc:17:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from s2/s2point_compression.cc:29:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
s2/s2padded_cell.cc: In constructor ‘S2PaddedCell::S2PaddedCell(S2CellId, double)’:
s2/s2padded_cell.cc:53:12: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   53 |     bound_ = S2CellId::IJLevelToBoundUV(ij, level_).Expanded(padding);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2padded_cell.cc: In member function ‘S2Point S2PaddedCell::GetCenter() const’:
s2/s2padded_cell.cc:92:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   92 | S2Point S2PaddedCell::GetCenter() const {
      |         ^~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2padded_cell.cc: In member function ‘S2Point S2PaddedCell::GetEntryVertex() const’:
s2/s2padded_cell.cc:99:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   99 | S2Point S2PaddedCell::GetEntryVertex() const {
      |         ^~~~~~~~~~~~
s2/s2padded_cell.cc: In member function ‘S2CellId S2PaddedCell::ShrinkToFit(const R2Rect&) const’:
s2/s2padded_cell.cc:149:62: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  149 |   R2Rect padded = rect.Expanded(padding() + 1.5 * DBL_EPSILON);
      |                                                              ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/s2padded_cell.cc: In member function ‘S2Point S2PaddedCell::GetCenter() const’:
s2/s2padded_cell.cc:92:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   92 | S2Point S2PaddedCell::GetCenter() const {
      |         ^~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2min_distance_targets.cc: In member function ‘virtual S2Cap S2MinDistanceEdgeTarget::GetCapBound()’:
s2/s2min_distance_targets.cc:75:22: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   75 |   return S2Cap((a_ + b_).Normalize(), S1ChordAngle::FromLength2(r2));
      |                      ^~
s2/s2padded_cell.cc: In member function ‘S2CellId S2PaddedCell::ShrinkToFit(const R2Rect&) const’:
s2/s2padded_cell.cc:126:10: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 | S2CellId S2PaddedCell::ShrinkToFit(const R2Rect& rect) const {
      |          ^~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2pointutil.cc -o s2/s2pointutil.o
s2/s2point_compression.cc: In function ‘bool S2DecodePointsCompressed(Decoder*, int, absl::s2_lts_20230802::Span<S2Point>)’:
s2/s2point_compression.cc:374:15: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  374 |     points[i] =
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2point_compression.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/s2point_compression.cc:392:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  392 | }
      | ^
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:52: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2polygon.cc -o s2/s2polygon.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2point_region.h:25,
                 from s2/s2point_region.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from s2/s2point_region.cc:22:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from s2/s2point_region.cc:23:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2latlng_rect.h:31,
                 from s2/s2point_region.cc:24:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2polyline_alignment.cc -o s2/s2polyline_alignment.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2pointutil.h:25,
                 from s2/s2pointutil.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/s2pointutil.cc: In function ‘S2Point S2::Ortho(const S2Point&)’:
s2/s2pointutil.cc:47:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   47 | S2Point Ortho(const S2Point& a) {
      |         ^~~~~
s2/s2pointutil.cc:57:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   57 |   return a.CrossProd(temp).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
s2/s2pointutil.cc: In function ‘S2Point S2::Rotate(const S2Point&, const S2Point&, S1Angle)’:
s2/s2pointutil.cc:61:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   61 | S2Point Rotate(const S2Point& p, const S2Point& axis, S1Angle angle) {
      |         ^~~~~~
s2/s2pointutil.cc:69:36: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   69 |   S2Point center = p.DotProd(axis) * axis;
      |                    ~~~~~~~~~~~~~~~~^~~~~~
s2/s2pointutil.cc:70:20: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   S2Point dx = p - center;
      |                    ^~~~~~
s2/s2pointutil.cc:71:30: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   71 |   S2Point dy = axis.CrossProd(p);
      |                ~~~~~~~~~~~~~~^~~
s2/s2pointutil.cc:74:65: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   74 |   return (cos(angle) * dx + sin(angle) * dy + center).Normalize();
      |                                                                 ^
s2/s2pointutil.cc:74:64: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   74 |   return (cos(angle) * dx + sin(angle) * dy + center).Normalize();
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2pointutil.cc: In function ‘void S2::GetFrame(const S2Point&, Matrix3x3_d*)’:
s2/s2pointutil.cc:86:21: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   86 |   m->SetCol(1, Ortho(z));
      |                ~~~~~^~~
s2/s2pointutil.cc:87:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   87 |   m->SetCol(0, m->Col(1).CrossProd(z));  // Already unit-length.
      |                ~~~~~~~~~~~~~~~~~~~^~~
s2/s2pointutil.cc: In function ‘S2Point S2::ToFrame(const Matrix3x3_d&, const S2Point&)’:
s2/s2pointutil.cc:90:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   90 | S2Point ToFrame(const Matrix3x3_d& m, const S2Point& p) {
      |         ^~~~~~~
s2/s2pointutil.cc:92:24: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   92 |   return m.Transpose() * p;
      |          ~~~~~~~~~~~~~~^~~
s2/s2pointutil.cc: In function ‘S2Point S2::FromFrame(const Matrix3x3_d&, const S2Point&)’:
s2/s2pointutil.cc:95:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   95 | S2Point FromFrame(const Matrix3x3_d& m, const S2Point& q) {
      |         ^~~~~~~~~
s2/s2pointutil.cc:96:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   96 |   return m * q;
      |          ~~^~~
s2/s2pointutil.cc: In function ‘S2Point S2::Rotate(const S2Point&, const S2Point&, S1Angle)’:
s2/s2pointutil.cc:70:20: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   S2Point dx = p - center;
      |                    ^~~~~~
s2/s2pointutil.cc:69:38: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   69 |   S2Point center = p.DotProd(axis) * axis;
      |                                      ^~~~
s2/s2pointutil.cc: In function ‘S2Point S2::Ortho(const S2Point&)’:
s2/s2pointutil.cc:47:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   47 | S2Point Ortho(const S2Point& a) {
      |         ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2polyline_measures.cc -o s2/s2polyline_measures.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from s2/s2polygon.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:418:6: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  418 | bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::MayIntersect(const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:344:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 |     if (Contains(clipped, target.GetCenter())) return true;
      |                           ~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2polyline.h:33,
                 from ../src/s2/s2polyline_alignment.h:24,
                 from s2/s2polyline_alignment.cc:17:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from s2/s2polygon.cc:55:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from s2/s2polygon.cc:58:
../src/s2/s2closest_edge_query.h: In member function ‘S2Point S2ClosestEdgeQuery::Project(const S2Point&, const Result&) const’:
../src/s2/s2closest_edge_query.h:429:66: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  429 |                                            const Result& result) const {
      |                                                                  ^~~~~
s2/s2polygon.cc: In static member function ‘static std::pair<double, double> S2Polygon::GetOverlapFractions(const S2Polygon&, const S2Polygon&)’:
s2/s2polygon.cc:593:43: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  593 |     const S2Polygon& a, const S2Polygon& b) {
      |                                           ^
s2/s2polygon.cc: In member function ‘S2Point S2Polygon::Project(const S2Point&) const’:
s2/s2polygon.cc:604:46: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  604 | S2Point S2Polygon::Project(const S2Point& x) const {
      |                                              ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2polyline_simplifier.cc -o s2/s2polyline_simplifier.o
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2polyline.h:34:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from /usr/include/c++/13/bits/stl_algobase.h:64,
                 from /usr/include/c++/13/algorithm:60,
                 from ../src/s2/s2polygon.h:21:
/usr/include/c++/13/bits/stl_pair.h: In instantiation of ‘constexpr std::pair<typename std::__strip_reference_wrapper<typename std::decay<_Tp>::type>::__type, typename std::__strip_reference_wrapper<typename std::decay<_Tp2>::type>::__type> std::make_pair(_T1&&, _T2&&) [with _T1 = double; _T2 = double; typename __strip_reference_wrapper<typename decay<_Tp>::type>::__type = double; typename decay<_Tp>::type = double; typename __strip_reference_wrapper<typename decay<_Tp2>::type>::__type = double; typename decay<_Tp2>::type = double]’:
s2/s2polygon.cc:599:24:   required from here
/usr/include/c++/13/bits/stl_pair.h:922:5: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  922 |     make_pair(_T1&& __x, _T2&& __y)
      |     ^~~~~~~~~
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2polyline_measures.h:29,
                 from s2/s2polyline_measures.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2polyline_measures.cc: In function ‘S2Point S2::GetCentroid(S2PointSpan)’:
s2/s2polyline_measures.cc:36:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   36 | S2Point GetCentroid(S2PointSpan polyline) {
      |         ^~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2polyline.cc -o s2/s2polyline.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
s2/s2polyline_alignment.cc: In function ‘s2polyline_alignment::VertexAlignment s2polyline_alignment::DynamicTimewarp(const S2Polyline&, const S2Polyline&, const Window&)’:
s2/s2polyline_alignment.cc:201:40: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  201 |                         (a.vertex(row) - b.vertex(col)).Norm();
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2polygon.cc: In member function ‘S2Point S2Polygon::GetCentroid() const’:
s2/s2polygon.cc:553:33: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  553 |     centroid += loop(i)->sign() * loop(i)->GetCentroid();
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
s2/s2polygon.cc:553:55: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  553 |     centroid += loop(i)->sign() * loop(i)->GetCentroid();
      |                                   ~~~~~~~~~~~~~~~~~~~~^~
s2/s2polygon.cc:553:33: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  553 |     centroid += loop(i)->sign() * loop(i)->GetCentroid();
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
s2/s2polygon.cc:555:10: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  555 |   return centroid;
      |          ^~~~~~~~
../src/s2/util/math/vector.h: In function ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = int; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
s2/s2polyline_alignment.cc: In function ‘double s2polyline_alignment::GetExactVertexAlignmentCost(const S2Polyline&, const S2Polyline&)’:
s2/s2polyline_alignment.cc:281:34: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  281 |                   (a.vertex(row) - b.vertex(col)).Norm();
      |                   ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2polygon.cc: In static member function ‘static std::pair<double, double> S2Polygon::GetOverlapFractions(const S2Polygon&, const S2Polygon&)’:
s2/s2polygon.cc:592:33: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  592 | /*static*/ pair<double, double> S2Polygon::GetOverlapFractions(
      |                                 ^~~~~~~~~
s2/s2polygon.cc: In member function ‘S2Point S2Polygon::Project(const S2Point&) const’:
s2/s2polygon.cc:604:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  604 | S2Point S2Polygon::Project(const S2Point& x) const {
      |         ^~~~~~~~~
s2/s2polygon.cc: In member function ‘bool S2Polygon::Contains(const S2Polygon&) const’:
s2/s2polygon.cc:633:50: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  633 |     if (b.num_loops() == 1 || !bound_.lng().Union(b.bound_.lng()).is_full()) {
      |                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
In file included from s2/s2polygon.cc:60:
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
In file included from s2/s2polygon.cc:77:
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::MayIntersect(const S2Cell&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2shape_index_region.h:344:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 |     if (Contains(clipped, target.GetCenter())) return true;
      |                           ~~~~~~~~~~~~~~~~^~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:16: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                ^~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetCenter() const’:
../src/s2/s2cell.h:193:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  193 |   S2Point GetCenter() const { return GetCenterRaw().Normalize(); }
      |           ^~~~~~~~~
s2/s2polygon.cc: In function ‘uint8 GetCellEdgeIncidenceMask(const S2Cell&, const S2Point&, double)’:
s2/s2polygon.cc:1064:36: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1064 |     R2Rect bound = cell.GetBoundUV();
      |                                    ^
s2/s2polygon.cc: In member function ‘virtual S2Shape::ReferencePoint S2Polygon::Shape::GetReferencePoint() const’:
s2/s2polygon.cc:1553:54: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1553 |   return ReferencePoint(S2::Origin(), contains_origin);
      |                                                      ^
s2/s2polyline_alignment.cc: In function ‘double s2polyline_alignment::GetExactVertexAlignmentCost(const S2Polyline&, const S2Polyline&)’:
s2/s2polyline_alignment.cc:281:48: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  281 |                   (a.vertex(row) - b.vertex(col)).Norm();
      |                                                ^
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
s2/s2polygon.cc: In member function ‘S2Point S2ClosestEdgeQuery::Project(const S2Point&, const Result&) const’:
s2/s2polygon.cc:1582:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1582 | }
      | ^
s2/s2polygon.cc: In function ‘uint8 GetCellEdgeIncidenceMask(const S2Cell&, const S2Point&, double)’:
s2/s2polygon.cc:1064:35: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1064 |     R2Rect bound = cell.GetBoundUV();
      |                    ~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s1chord_angle.h:29,
                 from ../src/s2/s2polyline_simplifier.h:63,
                 from s2/s2polyline_simplifier.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2polyline_simplifier.h:64:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
s2/s2polygon.cc: In member function ‘S2Point S2Polygon::GetCentroid() const’:
s2/s2polygon.cc:553:56: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  553 |     centroid += loop(i)->sign() * loop(i)->GetCentroid();
      |                                                        ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
s2/s2polyline_simplifier.cc: In member function ‘void S2PolylineSimplifier::Init(const S2Point&)’:
s2/s2polyline_simplifier.cc:31:11: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 |   window_ = S1Interval::Full();
      |   ~~~~~~~~^~~~~~~~~~~~~~~~~~~~
s2/s2polyline_simplifier.cc:40:24: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   40 |   S2Point tmp = src.Abs();
      |                 ~~~~~~~^~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Full()’:
../src/s2/s1interval.h:242:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  242 | inline S1Interval S1Interval::Full() {
      |                   ^~~~~~~~~~
../src/s2/util/math/vector.h: In member function ‘Vector3<T> Vector3<T>::Abs() const [with T = double]’:
../src/s2/util/math/vector.h:495:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  495 |   Vector3 Abs() const {
      |           ^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:31: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                            ~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2polyline_simplifier.cc: In member function ‘bool S2PolylineSimplifier::TargetDisc(const S2Point&, S1ChordAngle)’:
s2/s2polyline_simplifier.cc:87:13: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   87 |     window_ = S1Interval::Empty();
      |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
../src/s2/s1chord_angle.h: In constructor ‘S1ChordAngle::S1ChordAngle(const S2Point&, const S2Point&)’:
../src/s2/s1chord_angle.h:315:33: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  315 |   length2_ = std::min(4.0, (x - y).Norm2());
      |                                 ^
s2/s2polyline_simplifier.cc: In member function ‘void S2PolylineSimplifier::Init(const S2Point&)’:
s2/s2polyline_simplifier.cc:40:24: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   40 |   S2Point tmp = src.Abs();
      |                 ~~~~~~~^~
s2/s2polyline_simplifier.cc:31:29: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 |   window_ = S1Interval::Full();
      |             ~~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2predicates.cc -o s2/s2predicates.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2projections.cc -o s2/s2projections.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2polyline.h:33,
                 from s2/s2polyline.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2polyline.h:34:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from s2/s2polyline.cc:45:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
s2/s2polygon.cc:550:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  550 | S2Point S2Polygon::GetCentroid() const {
      |         ^~~~~~~~~
s2/s2polyline.cc: In member function ‘S2Point S2Polyline::GetCentroid() const’:
s2/s2polyline.cc:213:35: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 | S2Point S2Polyline::GetCentroid() const {
      |                                   ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s1chord_angle.h:29,
                 from ../src/s2/s2predicates.h:57,
                 from s2/s2predicates.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from s2/s2predicates.cc:27:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2latlng.h:32,
                 from ../src/s2/s2projections.h:28,
                 from s2/s2projections.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
s2/s2predicates.cc: In instantiation of ‘Vector3<T> s2pred::GetCircumcenter(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = double]’:
s2/s2predicates.cc:1128:33:   required from ‘int s2pred::TriageEdgeCircumcenterSign(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, int) [with T = double]’
s2/s2predicates.cc:1338:40:   required from here
s2/s2predicates.cc:1090:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1090 | Vector3<T> GetCircumcenter(const Vector3<T>& a, const Vector3<T>& b,
      |            ^~~~~~~~~~~~~~~
s2/s2predicates.cc: In instantiation of ‘Vector3<T> s2pred::GetCircumcenter(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = long double]’:
s2/s2predicates.cc:1128:33:   required from ‘int s2pred::TriageEdgeCircumcenterSign(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, int) [with T = long double]’
s2/s2predicates.cc:1345:38:   required from here
s2/s2predicates.cc:1090:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
s2/s2predicates.cc: In instantiation of ‘Vector3<T> s2pred::GetClosestVertex(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = double]’:
s2/s2predicates.cc:1458:37:   required from ‘s2pred::Excluded s2pred::TriageVoronoiSiteExclusion(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = double]’
s2/s2predicates.cc:1697:47:   required from here
s2/s2predicates.cc:564:19: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  564 | inline Vector3<T> GetClosestVertex(const Vector3<T>& x, const Vector3<T>& a0,
      |                   ^~~~~~~~~~~~~~~~
s2/s2predicates.cc: In instantiation of ‘Vector3<T> s2pred::GetClosestVertex(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = long double]’:
s2/s2predicates.cc:1458:37:   required from ‘s2pred::Excluded s2pred::TriageVoronoiSiteExclusion(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = long double]’
s2/s2predicates.cc:1700:40:   required from here
s2/s2predicates.cc:564:19: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2projections.cc: In member function ‘R2Point S2::Projection::WrapDestination(const R2Point&, const R2Point&) const’:
s2/s2projections.cc:31:73: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 | R2Point Projection::WrapDestination(const R2Point& a, const R2Point& b) const {
      |                                                                         ^~~~~
s2/s2projections.cc: In member function ‘virtual S2Point S2::PlateCarreeProjection::Unproject(const R2Point&) const’:
s2/s2projections.cc:66:60: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   66 | S2Point PlateCarreeProjection::Unproject(const R2Point& p) const {
      |                                                            ^~~~~
s2/s2projections.cc: In member function ‘virtual S2LatLng S2::PlateCarreeProjection::ToLatLng(const R2Point&) const’:
s2/s2projections.cc:70:60: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 | S2LatLng PlateCarreeProjection::ToLatLng(const R2Point& p) const {
      |                                                            ^~~~~
s2/s2projections.cc: In member function ‘virtual R2Point S2::PlateCarreeProjection::wrap_distance() const’:
s2/s2projections.cc:75:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   75 | R2Point PlateCarreeProjection::wrap_distance() const {
      |                                                ^~~~~
s2/s2projections.cc: In member function ‘virtual S2Point S2::MercatorProjection::Unproject(const R2Point&) const’:
s2/s2projections.cc:97:57: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   97 | S2Point MercatorProjection::Unproject(const R2Point& p) const {
      |                                                         ^~~~~
s2/s2projections.cc: In member function ‘virtual S2LatLng S2::MercatorProjection::ToLatLng(const R2Point&) const’:
s2/s2projections.cc:101:57: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  101 | S2LatLng MercatorProjection::ToLatLng(const R2Point& p) const {
      |                                                         ^~~~~
s2/s2projections.cc: In member function ‘virtual R2Point S2::MercatorProjection::wrap_distance() const’:
s2/s2projections.cc:109:45: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  109 | R2Point MercatorProjection::wrap_distance() const {
      |                                             ^~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
s2/s2polygon.cc: In member function ‘bool S2Polygon::Contains(const S2Polygon&) const’:
s2/s2polygon.cc:618:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  618 | bool S2Polygon::Contains(const S2Polygon& b) const {
      |      ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, long double, 3>::D&)::<lambda(const long double&)>; As = {const long double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, long double, 3>::D&)::<lambda(const long double&)>; As = {const Vector3<long double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, long double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, long double, 3>::D&)’
s2/s2predicates.cc:796:3:   required from ‘int s2pred::TriageIntersectionOrdering(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&) [with T = long double]’
s2/s2predicates.cc:906:37:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2projections.h:27:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2predicates.cc: In function ‘int s2pred::Sign(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:46:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   46 |   return Sign(a, b, c, a.CrossProd(b));
      |                        ~~~~~~~~~~~^~~
s2/s2predicates.cc: In function ‘int s2pred::StableSign(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:63:20: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 |   Vector3_d ab = b - a;
      |                  ~~^~~
s2/s2predicates.cc:84:25: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   84 |     det = -(ca.CrossProd(bc).DotProd(c));
      |             ~~~~~~~~~~~~^~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2predicates.cc: In function ‘int s2pred::CompareDistances(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:469:42: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |     sign = TriageCompareCosDistances(ToLD(x), ToLD(a), ToLD(b));
      |                                      ~~~~^~~
s2/s2predicates.cc: In function ‘int s2pred::ExactCompareEdgeDistance(const S2Point&, const S2Point&, const S2Point&, S1ChordAngle)’:
s2/s2predicates.cc:743:13: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  743 |   if (a0 != -x && a1 != -x &&
      |             ^~
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2predicates.cc: In function ‘int s2pred::CompareEdgeDistance(const S2Point&, const S2Point&, const S2Point&, S1ChordAngle)’:
s2/s2predicates.cc:767:42: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  767 |     sign = TriageCompareEdgeDistance(ToLD(x), ToLD(a0), ToLD(a1),
      |                                      ~~~~^~~
s2/s2predicates.cc: In function ‘int s2pred::UnperturbedSign(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:1253:45: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1253 |   int sign = TriageSign(a, b, c, a.CrossProd(b));
      |                                  ~~~~~~~~~~~^~~
s2/s2predicates.cc: In function ‘int s2pred::EdgeCircumcenterSign(const S2Point&, const S2Point&, const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:1346:13: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1346 |         ToLD(x0), ToLD(x1), ToLD(a), ToLD(b), ToLD(c), abc_sign);
      |         ~~~~^~~~
s2/s2predicates.cc: In function ‘double s2pred::GetSin2Distance(const S2Point&, const S2Point&, double*)’:
s2/s2predicates.cc:343:32: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  343 |   S2Point n = (x - y).CrossProd(x + y);
      |               ~~~~~~~~~~~~~~~~~^~~~~~~
s2/s2predicates.cc:343:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  343 |   S2Point n = (x - y).CrossProd(x + y);
      |               ~~~^~~~
s2/s2predicates.cc:343:32: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  343 |   S2Point n = (x - y).CrossProd(x + y);
      |               ~~~~~~~~~~~~~~~~~^~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |           ^~~~~~~~
../src/s2/s2point.h:128:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2predicates.cc: In function ‘long double s2pred::GetSin2Distance(const Vector3_ld&, const Vector3_ld&, long double*)’:
s2/s2predicates.cc:361:41: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  361 |   Vector3_ld n = (x - y).CrossProd(x + y);
      |                                         ^
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDistance(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = double]’:
s2/s2predicates.cc:684:14: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  684 |   Vector3<T> n = (a0 - a1).CrossProd(a0 + a1);
      |              ^
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDistance(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = long double]’:
s2/s2predicates.cc:684:14: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDirections(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&) [with T = double]’:
s2/s2predicates.cc:1043:14: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1043 |   Vector3<T> na = (a0 - a1).CrossProd(a0 + a1);
      |              ^~
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDirections(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&) [with T = long double]’:
s2/s2predicates.cc:1043:14: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2predicates.cc: In function ‘int s2pred::TriageEdgeCircumcenterSign(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, int) [with T = double]’:
s2/s2predicates.cc:1128:14: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1128 |   Vector3<T> z = GetCircumcenter(a, b, c, &z_error);
      |              ^
s2/s2predicates.cc: In function ‘int s2pred::TriageEdgeCircumcenterSign(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, int) [with T = long double]’:
s2/s2predicates.cc:1128:14: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2predicates.cc: In function ‘s2pred::Excluded s2pred::TriageVoronoiSiteExclusion(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = double]’:
s2/s2predicates.cc:1447:14: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1447 |   Vector3<T> n = (x0 - x1).CrossProd(x0 + x1);  // 2 * x0.CrossProd(x1)
      |              ^
s2/s2predicates.cc: In function ‘s2pred::Excluded s2pred::TriageVoronoiSiteExclusion(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = long double]’:
s2/s2predicates.cc:1447:14: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
s2/s2polyline.cc: In member function ‘void S2Polyline::Init(absl::s2_lts_20230802::Span<const S2LatLng>)’:
s2/s2polyline.cc:132:18: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  132 |     vertices_[i] = vertices[i].ToPoint();
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s2/s2polyline.cc: In member function ‘S2Point S2Polyline::GetCentroid() const’:
s2/s2polyline.cc:213:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 | S2Point S2Polyline::GetCentroid() const {
      |         ^~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
s2/s2polyline.cc: In member function ‘virtual bool S2Polyline::MayIntersect(const S2Cell&) const’:
s2/s2polyline.cc:398:22: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  398 |     cell_vertices[i] = cell.GetVertex(i);
      |     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetVertexRaw(int) const’:
../src/s2/s2cell.h:114:48: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                   ~~~~~~~~~~~~~^~~
../src/s2/s2cell.h:114:51: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  114 |     return S2::FaceUVtoXYZ(face_, uv_.GetVertex(k));
      |                                                   ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                ^~~~~~
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, const R2Point&)’:
../src/s2/s2coords.h:367:16: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  367 | inline S2Point FaceUVtoXYZ(int face, const R2Point& uv) {
      |                ^~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
s2/s2polyline.cc: In function ‘int {anonymous}::FindEndVertex(const S2Polyline&, S1Angle, int)’:
s2/s2polyline.cc:582:47: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  582 |   S1Interval current_wedge = S1Interval::Full();
      |                                               ^
s2/s2polyline.cc:609:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  609 |     S2Point direction = S2::ToFrame(frame, candidate);
      |                                                     ^
s2/s2polyline.cc:623:74: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  623 |     S1Interval target = S1Interval::FromPoint(center).Expanded(half_angle);
      |                                                                          ^
../src/s2/util/math/vector.h: In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2/s2polyline.cc: In member function ‘bool S2Polyline::NearlyCovers(const S2Polyline&, S1Angle) const’:
s2/s2polyline.cc:763:65: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  763 |         covered.vertex(0), this->vertex(i), this->vertex(next_i));
      |                                                                 ^
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2shape_index_region.h:418:6: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  418 | bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
s2/s2predicates.cc: In function ‘double s2pred::GetSin2Distance(const S2Point&, const S2Point&, double*)’:
s2/s2predicates.cc:343:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  343 |   S2Point n = (x - y).CrossProd(x + y);
      |                                     ^
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDirections(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&) [with T = double]’:
s2/s2predicates.cc:1044:42: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1044 |   Vector3<T> nb = (b0 - b1).CrossProd(b0 + b1);
      |                                       ~~~^~~~
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
s2/s2projections.cc: In member function ‘virtual S2Point S2::PlateCarreeProjection::Unproject(const R2Point&) const’:
s2/s2projections.cc:66:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   66 | S2Point PlateCarreeProjection::Unproject(const R2Point& p) const {
      |         ^~~~~~~~~~~~~~~~~~~~~
s2/s2projections.cc:67:18: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   67 |   return ToLatLng(p).ToPoint();
      |          ~~~~~~~~^~~
s2/s2projections.cc:67:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   67 |   return ToLatLng(p).ToPoint();
      |                              ^
s2/s2projections.cc: In member function ‘virtual S2LatLng S2::PlateCarreeProjection::ToLatLng(const R2Point&) const’:
s2/s2projections.cc:70:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 | S2LatLng PlateCarreeProjection::ToLatLng(const R2Point& p) const {
      |          ^~~~~~~~~~~~~~~~~~~~~
s2/s2projections.cc: In member function ‘virtual R2Point S2::PlateCarreeProjection::wrap_distance() const’:
s2/s2projections.cc:75:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   75 | R2Point PlateCarreeProjection::wrap_distance() const {
      |         ^~~~~~~~~~~~~~~~~~~~~
s2/s2projections.cc: In member function ‘virtual S2Point S2::MercatorProjection::Unproject(const R2Point&) const’:
s2/s2projections.cc:97:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   97 | S2Point MercatorProjection::Unproject(const R2Point& p) const {
      |         ^~~~~~~~~~~~~~~~~~
s2/s2projections.cc:98:18: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 |   return ToLatLng(p).ToPoint();
      |          ~~~~~~~~^~~
s2/s2projections.cc:98:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 |   return ToLatLng(p).ToPoint();
      |                              ^
s2/s2projections.cc: In member function ‘virtual S2LatLng S2::MercatorProjection::ToLatLng(const R2Point&) const’:
s2/s2projections.cc:101:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  101 | S2LatLng MercatorProjection::ToLatLng(const R2Point& p) const {
      |          ^~~~~~~~~~~~~~~~~~
s2/s2projections.cc: In member function ‘virtual R2Point S2::MercatorProjection::wrap_distance() const’:
s2/s2projections.cc:109:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  109 | R2Point MercatorProjection::wrap_distance() const {
      |         ^~~~~~~~~~~~~~~~~~
s2/s2predicates.cc: In function ‘long double s2pred::GetSin2Distance(const Vector3_ld&, const Vector3_ld&, long double*)’:
s2/s2predicates.cc:361:40: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  361 |   Vector3_ld n = (x - y).CrossProd(x + y);
      |                                        ^
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2predicates.cc: In function ‘int s2pred::CompareSin2Distances(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:438:61: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  438 |     sign = TriageCompareSin2Distances(ToLD(x), ToLD(a), ToLD(b));
      |                                                         ~~~~^~~
s2/s2predicates.cc: In function ‘int s2pred::ExactCompareEdgeDistance(const S2Point&, const S2Point&, const S2Point&, S1ChordAngle)’:
s2/s2predicates.cc:743:14: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  743 |   if (a0 != -x && a1 != -x &&
      |              ^
s2/s2predicates.cc: In function ‘int s2pred::CompareDistances(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:469:60: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  469 |     sign = TriageCompareCosDistances(ToLD(x), ToLD(a), ToLD(b));
      |                                                        ~~~~^~~
s2/s2projections.cc: In member function ‘virtual S2LatLng S2::PlateCarreeProjection::ToLatLng(const R2Point&) const’:
s2/s2projections.cc:70:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 | S2LatLng PlateCarreeProjection::ToLatLng(const R2Point& p) const {
      |          ^~~~~~~~~~~~~~~~~~~~~
s2/s2predicates.cc: In function ‘Vector3<T> s2pred::GetClosestVertex(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = double]’:
s2/s2predicates.cc:567:16: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  567 |   T a1x2 = (a1 - x).Norm2();
      |            ~~~~^~~~
s2/s2projections.cc: In member function ‘virtual R2Point S2::PlateCarreeProjection::Project(const S2Point&) const’:
s2/s2projections.cc:57:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   57 | R2Point PlateCarreeProjection::Project(const S2Point& p) const {
      |         ^~~~~~~~~~~~~~~~~~~~~
s2/s2projections.cc: In member function ‘virtual S2Point S2::PlateCarreeProjection::Unproject(const R2Point&) const’:
s2/s2projections.cc:66:9: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   66 | S2Point PlateCarreeProjection::Unproject(const R2Point& p) const {
      |         ^~~~~~~~~~~~~~~~~~~~~
s2/s2projections.cc:66:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2projections.cc:66:9: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2projections.cc:66:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2projections.cc:67:18: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   67 |   return ToLatLng(p).ToPoint();
      |          ~~~~~~~~^~~
s2/s2projections.cc:67:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   67 |   return ToLatLng(p).ToPoint();
      |          ~~~~~~~~~~~~~~~~~~~^~
s2/s2projections.cc: In member function ‘virtual R2Point S2::MercatorProjection::FromLatLng(const S2LatLng&) const’:
s2/s2projections.cc:89:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   89 | R2Point MercatorProjection::FromLatLng(const S2LatLng& ll) const {
      |         ^~~~~~~~~~~~~~~~~~
s2/s2projections.cc: In member function ‘virtual S2LatLng S2::MercatorProjection::ToLatLng(const R2Point&) const’:
s2/s2projections.cc:101:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  101 | S2LatLng MercatorProjection::ToLatLng(const R2Point& p) const {
      |          ^~~~~~~~~~~~~~~~~~
s2/s2projections.cc: In member function ‘virtual S2Point S2::MercatorProjection::Unproject(const R2Point&) const’:
s2/s2projections.cc:97:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   97 | S2Point MercatorProjection::Unproject(const R2Point& p) const {
      |         ^~~~~~~~~~~~~~~~~~
s2/s2projections.cc:97:9: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2projections.cc:97:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2projections.cc:98:18: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 |   return ToLatLng(p).ToPoint();
      |          ~~~~~~~~^~~
s2/s2projections.cc:98:29: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 |   return ToLatLng(p).ToPoint();
      |          ~~~~~~~~~~~~~~~~~~~^~
s2/s2predicates.cc: In function ‘Vector3<T> s2pred::GetClosestVertex(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = long double]’:
s2/s2predicates.cc:567:16: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  567 |   T a1x2 = (a1 - x).Norm2();
      |            ~~~~^~~~
s2/s2projections.cc: In member function ‘R2Point S2::Projection::WrapDestination(const R2Point&, const R2Point&) const’:
s2/s2projections.cc:31:9: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   31 | R2Point Projection::WrapDestination(const R2Point& a, const R2Point& b) const {
      |         ^~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
s2/s2polyline.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/s2polyline.cc:823:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  823 | }
      | ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2r2rect.cc -o s2/s2r2rect.o
../src/s2/s2point.h: In function ‘S2Point operator-(const S2Point&)’:
../src/s2/s2point.h:134:41: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  134 |     return -static_cast<const Base&>(pnt);
      |                                         ^
s2/s2polyline.cc: In member function ‘bool S2Polyline::FindValidationError(S2Error*) const’:
s2/s2polyline.cc:184:35: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 |     if (vertex(i - 1) == -vertex(i)) {
      |                                   ^
s2/s2polyline.cc: In function ‘int {anonymous}::FindEndVertex(const S2Polyline&, S1Angle, int)’:
s2/s2polyline.cc:582:46: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  582 |   S1Interval current_wedge = S1Interval::Full();
      |                              ~~~~~~~~~~~~~~~~^~
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDirections(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&) [with T = double]’:
s2/s2predicates.cc:1044:38: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1044 |   Vector3<T> nb = (b0 - b1).CrossProd(b0 + b1);
      |                   ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
s2/s2predicates.cc: In function ‘int s2pred::TriageCompareEdgeDirections(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&) [with T = long double]’:
s2/s2predicates.cc:1044:38: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1044 |   Vector3<T> nb = (b0 - b1).CrossProd(b0 + b1);
      |                   ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
s2/s2predicates.cc: In function ‘s2pred::Excluded s2pred::TriageVoronoiSiteExclusion(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = double]’:
s2/s2predicates.cc:1492:37: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1492 |   Vector3<T> aXb = (a - b).CrossProd(a + b);  // 2 * a.CrossProd(b)
      |                    ~~~~~~~~~~~~~~~~~^~~~~~~
s2/s2predicates.cc: In function ‘s2pred::Excluded s2pred::TriageVoronoiSiteExclusion(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T) [with T = long double]’:
s2/s2predicates.cc:1492:37: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1492 |   Vector3<T> aXb = (a - b).CrossProd(a + b);  // 2 * a.CrossProd(b)
      |                    ~~~~~~~~~~~~~~~~~^~~~~~~
s2/s2polyline.cc: In member function ‘S2Point S2Polyline::GetCentroid() const’:
s2/s2polyline.cc:213:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  213 | S2Point S2Polyline::GetCentroid() const {
      |         ^~~~~~~~~~
In file included from ../src/s2/s2r2rect.h:26,
                 from s2/s2r2rect.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2r2rect.h:28:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In member function ‘Vector3<T>::FloatType Vector3<T>::Angle(const Vector3<T>&) const [with T = double]’,
    inlined from ‘int {anonymous}::FindEndVertex(const S2Polyline&, S1Angle, int)’ at s2/s2polyline.cc:587:35,
    inlined from ‘void S2Polyline::SubsampleVertices(S1Angle, std::vector<int>*) const’ at s2/s2polyline.cc:641:35:
../src/s2/util/math/vector.h:490:27: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  490 |     return atan2(CrossProd(v).Norm(), this->DotProd(v));
      |                  ~~~~~~~~~^~~
s2/s2polyline.cc: In member function ‘void S2Polyline::SubsampleVertices(S1Angle, std::vector<int>*) const’:
s2/s2polyline.cc:633:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  633 | void S2Polyline::SubsampleVertices(S1Angle tolerance,
      |      ^~~~~~~~~~
s2/s2polyline.cc:633:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2polyline.cc:633:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2polyline.cc:633:6: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
In function ‘int {anonymous}::FindEndVertex(const S2Polyline&, S1Angle, int)’,
    inlined from ‘void S2Polyline::SubsampleVertices(S1Angle, std::vector<int>*) const’ at s2/s2polyline.cc:641:35:
s2/s2polyline.cc:609:36: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  609 |     S2Point direction = S2::ToFrame(frame, candidate);
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
s2/s2polyline.cc:623:46: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  623 |     S1Interval target = S1Interval::FromPoint(center).Expanded(half_angle);
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
s2/s2polyline.cc: In member function ‘void S2Polyline::Init(absl::s2_lts_20230802::Span<const S2LatLng>)’:
s2/s2polyline.cc:128:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 | void S2Polyline::Init(Span<const S2LatLng> vertices) {
      |      ^~~~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2r2rect.h:29:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2/s2predicates.cc: In function ‘int s2pred::Sign(const S2Point&, const S2Point&, const S2Point&)’:
s2/s2predicates.cc:46:35: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   46 |   return Sign(a, b, c, a.CrossProd(b));
      |                        ~~~~~~~~~~~^~~
../src/s2/s2r2rect.h: In member function ‘R2Point S2R2Rect::lo() const’:
../src/s2/s2r2rect.h:240:31: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  240 | inline R2Point S2R2Rect::lo() const { return rect_.lo(); }
      |                               ^~~~~
In file included from ../src/s2/s1chord_angle.h:31,
                 from ../src/s2/s2cap.h:31,
                 from s2/s2r2rect.cc:23:
../src/s2/s2pointutil.h: In function ‘S2Point S2::Origin()’:
../src/s2/s2pointutil.h:98:23: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   98 | inline S2Point Origin() {
      |                       ^
In file included from s2/s2r2rect.cc:24:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31,
                 from s2/s2r2rect.cc:27:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
s2/s2r2rect.cc: In static member function ‘static S2Point S2R2Rect::ToS2Point(const R2Point&)’:
s2/s2r2rect.cc:45:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   45 | S2Point S2R2Rect::ToS2Point(const R2Point& p) {
      |                                             ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2region_coverer.cc -o s2/s2region_coverer.o
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/s2r2rect.h: In static member function ‘static S2R2Rect S2R2Rect::FromCenterSize(const R2Point&, const R2Point&)’:
../src/s2/s2r2rect.h:227:41: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  227 |   return S2R2Rect(R2Rect::FromCenterSize(center, size));
      |                   ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
s2/s2r2rect.cc: In static member function ‘static S2R2Rect S2R2Rect::FromCellId(S2CellId)’:
s2/s2r2rect.cc:38:39: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   38 |   return FromCenterSize(id.GetCenterST(), R2Point(size, size));
      |                         ~~~~~~~~~~~~~~^~
s2/s2r2rect.cc: In static member function ‘static S2Point S2R2Rect::ToS2Point(const R2Point&)’:
s2/s2r2rect.cc:45:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   45 | S2Point S2R2Rect::ToS2Point(const R2Point& p) {
      |         ^~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
s2/s2r2rect.cc: In member function ‘virtual S2Cap S2R2Rect::GetCapBound() const’:
s2/s2r2rect.cc:57:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   57 |   S2Cap cap = S2Cap::FromPoint(ToS2Point(GetCenter()));
      |                                ~~~~~~~~~^~~~~~~~~~~~~
s2/s2r2rect.cc:57:51: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   57 |   S2Cap cap = S2Cap::FromPoint(ToS2Point(GetCenter()));
      |                                          ~~~~~~~~~^~
s2/s2r2rect.cc:57:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   57 |   S2Cap cap = S2Cap::FromPoint(ToS2Point(GetCenter()));
      |                                ~~~~~~~~~^~~~~~~~~~~~~
s2/s2r2rect.cc:59:37: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   59 |     cap.AddPoint(ToS2Point(GetVertex(k)));
      |                            ~~~~~~~~~^~~
s2/s2r2rect.cc:59:27: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   59 |     cap.AddPoint(ToS2Point(GetVertex(k)));
      |                  ~~~~~~~~~^~~~~~~~~~~~~~
../src/s2/s2r2rect.h: In member function ‘R2Point S2R2Rect::GetCenter() const’:
../src/s2/s2r2rect.h:251:16: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  251 | inline R2Point S2R2Rect::GetCenter() const { return rect_.GetCenter(); }
      |                ^~~~~~~~
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:13: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |             ^~~~
s2/s2r2rect.cc: In function ‘std::ostream& operator<<(std::ostream&, const S2R2Rect&)’:
s2/s2r2rect.cc:87:29: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   87 |   return os << "[Lo" << r.lo() << ", Hi" << r.hi() << "]";
      |                         ~~~~^~
s2/s2predicates.cc: In function ‘Vector3<T> s2pred::GetCircumcenter(const Vector3<T>&, const Vector3<T>&, const Vector3<T>&, T*) [with T = long double]’:
s2/s2predicates.cc:1111:33: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
 1111 |   Vector3<T> mbc = nbc.CrossProd(bc_sum);
      |                    ~~~~~~~~~~~~~^~~~~~~~
s2/s2r2rect.cc: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
s2/s2r2rect.cc:88:1: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   88 | }
      | ^
../src/s2/util/math/vector.h: In member function ‘int Vector3<T>::LargestAbsComponent() const [with T = double]’:
../src/s2/util/math/vector.h:505:23: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  505 |     Vector3 temp = Abs();
      |                    ~~~^~
s2/s2r2rect.cc: In function ‘std::ostream& operator<<(std::ostream&, const S2R2Rect&)’:
s2/s2r2rect.cc:87:29: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   87 |   return os << "[Lo" << r.lo() << ", Hi" << r.hi() << "]";
      |                         ~~~~^~
s2/s2r2rect.cc: In static member function ‘static S2R2Rect S2R2Rect::FromCell(const S2Cell&)’:
s2/s2r2rect.cc:30:10: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
   30 | S2R2Rect S2R2Rect::FromCell(const S2Cell& cell) {
      |          ^~~~~~~~
s2/s2r2rect.cc:30:10: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2r2rect.cc:30:10: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2r2rect.cc:33:46: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   33 |   return FromCenterSize(cell.id().GetCenterST(), R2Point(size, size));
      |                         ~~~~~~~~~~~~~~~~~~~~~^~
In static member function ‘static S2R2Rect S2R2Rect::FromCenterSize(const R2Point&, const R2Point&)’,
    inlined from ‘static S2R2Rect S2R2Rect::FromCell(const S2Cell&)’ at s2/s2r2rect.cc:33:69:
../src/s2/s2r2rect.h:227:41: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  227 |   return S2R2Rect(R2Rect::FromCenterSize(center, size));
      |                   ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
s2/s2r2rect.cc: In static member function ‘static S2R2Rect S2R2Rect::FromCellId(S2CellId)’:
s2/s2r2rect.cc:36:10: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   36 | S2R2Rect S2R2Rect::FromCellId(S2CellId id) {
      |          ^~~~~~~~
s2/s2r2rect.cc:36:10: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2r2rect.cc:36:10: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2r2rect.cc:36:10: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2r2rect.cc:38:39: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   38 |   return FromCenterSize(id.GetCenterST(), R2Point(size, size));
      |                         ~~~~~~~~~~~~~~^~
In static member function ‘static S2R2Rect S2R2Rect::FromCenterSize(const R2Point&, const R2Point&)’,
    inlined from ‘static S2R2Rect S2R2Rect::FromCellId(S2CellId)’ at s2/s2r2rect.cc:38:62:
../src/s2/s2r2rect.h:227:41: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  227 |   return S2R2Rect(R2Rect::FromCenterSize(center, size));
      |                   ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
s2/s2r2rect.cc: In static member function ‘static S2Point S2R2Rect::ToS2Point(const R2Point&)’:
s2/s2r2rect.cc:46:25: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   46 |   return S2::FaceUVtoXYZ(0, S2::STtoUV(p.x()), S2::STtoUV(p.y())).Normalize();
      |          ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2region_intersection.cc -o s2/s2region_intersection.o
s2/s2polygon.cc: In static member function ‘static std::pair<double, double> S2Polygon::GetOverlapFractions(const S2Polygon&, const S2Polygon&)’:
s2/s2polygon.cc:592:33: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  592 | /*static*/ pair<double, double> S2Polygon::GetOverlapFractions(
      |                                 ^~~~~~~~~
In file included from ../src/s2/s2polygon.h:43:
In static member function ‘static std::vector<S2Point> S2Loop::kFull()’,
    inlined from ‘void S2Polygon::Invert()’ at s2/s2polygon.cc:863:55:
../src/s2/s2loop.h:698:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  698 |   return std::vector<S2Point>(1, kFullVertex());
      |                                  ~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2region_term_indexer.cc -o s2/s2region_term_indexer.o
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2region_coverer.h:31,
                 from s2/s2region_coverer.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s1chord_angle.h:29,
                 from ../src/s2/s2cell.h:28:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2region_intersection.h:27,
                 from s2/s2region_intersection.cc:17:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from s2/s2region_intersection.cc:24:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2region_term_indexer.h:105,
                 from s2/s2region_term_indexer.cc:75:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/s2latlng_rect.h: In static member function ‘static S2LatLngRect S2LatLngRect::Full()’:
../src/s2/s2latlng_rect.h:407:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                       ~~~~~~~^~
../src/s2/s2latlng_rect.h:407:41: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                                  ~~~~~~~^~
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                     ^~~~~~~
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:21: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                     ^~~~~~~
../src/s2/s2latlng_rect.h: In static member function ‘static S2LatLngRect S2LatLngRect::Full()’:
../src/s2/s2latlng_rect.h:407:30: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  407 |   return S2LatLngRect(FullLat(), FullLng());
      |                       ~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2region_union.cc -o s2/s2region_union.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2region_coverer.h:31,
                 from ../src/s2/s2region_term_indexer.h:109:
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2region.cc -o s2/s2region.o
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shape_index_buffered_region.cc -o s2/s2shape_index_buffered_region.o
In file included from ../src/s2/s2region_union.h:28,
                 from s2/s2region_union.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2latlng_rect.h:29,
                 from s2/s2region_union.cc:25:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/s2latlng_rect.h:31:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2latlng_rect.h:33:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shape_index_measures.cc -o s2/s2shape_index_measures.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2region.h:24,
                 from s2/s2region.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shape_index.cc -o s2/s2shape_index.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shape_measures.cc -o s2/s2shape_measures.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2shape_index_buffered_region.h:23,
                 from s2/s2shape_index_buffered_region.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell.h:27,
                 from ../src/s2/s2shape_index_buffered_region.h:26:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/s2cell.h:29:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
../src/s2/s2cell.h: In member function ‘R2Rect S2Cell::GetBoundUV() const’:
../src/s2/s2cell.h:216:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  216 |   R2Rect GetBoundUV() const { return uv_; }
      |                             ^
In file included from ../src/s2/s2distance_target.h:27,
                 from ../src/s2/s2closest_edge_query_base.h:42,
                 from ../src/s2/s2closest_edge_query.h:34,
                 from ../src/s2/s2shape_index_buffered_region.h:29:
../src/s2/s2shape_index.h: In member function ‘S2Point S2ShapeIndex::Iterator::center() const’:
../src/s2/s2shape_index.h:416:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  416 |     S2Point center() const { return id().ToPoint(); }
      |                            ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from s2/s2shape_index.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_distances.h:31,
                 from ../src/s2/s2closest_edge_query.h:35:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2shape_index_measures.h:25,
                 from s2/s2shape_index_measures.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shape_index_measures.h:27:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
s2/s2shape_index_measures.cc: In function ‘S2Point S2::GetCentroid(const S2ShapeIndex&)’:
s2/s2shape_index_measures.cc:86:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   86 | S2Point GetCentroid(const S2ShapeIndex& index) {
      |         ^~~~~~~~~~~
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2cell_id.h:41:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2shape_measures.h:27,
                 from s2/s2shape_measures.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2edge_crossings.h:39,
                 from ../src/s2/s2loop_measures.h:34,
                 from s2/s2shape_measures.cc:25:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2edge_crossings.h:42:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
s2/s2shape_measures.cc: In function ‘S2Point S2::GetCentroid(const S2Shape&)’:
s2/s2shape_measures.cc:116:41: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  116 | S2Point GetCentroid(const S2Shape& shape) {
      |                                         ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shape_nesting_query.cc -o s2/s2shape_nesting_query.o
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2shape_measures.cc:116:9: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  116 | S2Point GetCentroid(const S2Shape& shape) {
      |         ^~~~~~~~~~~
In file included from ../src/s2/s2shape_index_region.h:32,
                 from s2/s2shape_index_buffered_region.cc:33:
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::MayIntersect(const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:344:43: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  344 |     if (Contains(clipped, target.GetCenter())) return true;
      |                           ~~~~~~~~~~~~~~~~^~
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:16: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                ^~~~~
../src/s2/s2cell.h: In member function ‘S2Point S2Cell::GetCenter() const’:
../src/s2/s2cell.h:193:11: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  193 |   S2Point GetCenter() const { return GetCenterRaw().Normalize(); }
      |           ^~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_build_polygon_boundaries.cc -o s2/s2shapeutil_build_polygon_boundaries.o
../src/s2/s2shape_index_region.h: In member function ‘bool S2ShapeIndexRegion<IndexType>::AnyEdgeIntersects(const S2ClippedShape&, const S2Cell&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2shape_index_region.h:422:52: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  422 |   const R2Rect bound = target.GetBoundUV().Expanded(kMaxError);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_coding.cc -o s2/s2shapeutil_coding.o
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = S2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_contains_brute_force.cc -o s2/s2shapeutil_contains_brute_force.o
In file included from ../src/s2/s2shape.h:26,
                 from ../src/s2/s2shape_nesting_query.h:26,
                 from s2/s2shape_nesting_query.cc:17:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shape_nesting_query.h:27:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/s2shape.h:26,
                 from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23,
                 from s2/s2shapeutil_build_polygon_boundaries.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2/s2shape_nesting_query.cc: In function ‘int ClosestOfNPoints(const S2Point&, const S2Shape&, int, int)’:
s2/s2shape_nesting_query.cc:54:28: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |     double dist2 = (target - point).Norm2();
      |                    ~~~~~~~~^~~~~~~~
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator-(const S2Point&) const’:
../src/s2/s2point.h:129:69: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  129 |   S2Point operator-(const S2Point& b) const { return Base::operator-(b); }
      |                                                      ~~~~~~~~~~~~~~~^~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shapeutil_build_polygon_boundaries.h:24:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2shape.h:26,
                 from ../src/s2/s2shapeutil_coding.h:45,
                 from s2/s2shapeutil_coding.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
s2/s2shape_nesting_query.cc: In function ‘int ClosestOfNPoints(const S2Point&, const S2Shape&, int, int)’:
s2/s2shape_nesting_query.cc:54:30: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |     double dist2 = (target - point).Norm2();
      |                              ^~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shapeutil_coding.h:46:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_crosser.h:23,
                 from ../src/s2/s2contains_point_query.h:26,
                 from s2/s2shapeutil_build_polygon_boundaries.cc:26:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2shapeutil_build_polygon_boundaries.cc: In function ‘void s2shapeutil::BuildPolygonBoundaries(const std::vector<std::vector<S2Shape*> >&, std::vector<std::vector<S2Shape*> >*)’:
s2/s2shapeutil_build_polygon_boundaries.cc:70:61: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |           !s2shapeutil::ContainsBruteForce(*loop, S2::Origin())) {
      |                                                   ~~~~~~~~~~^~
../src/s2/s2point.h: In member function ‘S2Point S2Point::Normalize() const’:
../src/s2/s2point.h:157:53: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  157 |   S2Point Normalize() const { return Base::Normalize(); }
      |                                      ~~~~~~~~~~~~~~~^~
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36,
                 from ../src/s2/s2lax_polygon_shape.h:36,
                 from s2/s2shapeutil_coding.cc:28:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_conversion.cc -o s2/s2shapeutil_conversion.o
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21,
                 from s2/s2shapeutil_contains_brute_force.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shapeutil_contains_brute_force.h:23:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_crosser.h:23,
                 from s2/s2shapeutil_contains_brute_force.cc:20:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2contains_point_query.h: In member function ‘bool S2ContainsPointQuery<IndexType>::ShapeContains(S2CellId, const S2ClippedShape&, const S2Point&) const [with IndexType = MutableS2ShapeIndex]’:
../src/s2/s2contains_point_query.h:323:49: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  323 |     S2CopyingEdgeCrosser crosser(cell_id.ToPoint(), p);
      |                                  ~~~~~~~~~~~~~~~^~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_edge_iterator.cc -o s2/s2shapeutil_edge_iterator.o
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
In file included from ../src/s2/s2shapeutil_conversion.h:27,
                 from s2/s2shapeutil_conversion.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_get_reference_point.cc -o s2/s2shapeutil_get_reference_point.o
In file included from ../src/s2/s2shape.h:26,
                 from ../src/s2/s2shapeutil_edge_iterator.h:22,
                 from s2/s2shapeutil_edge_iterator.cc:16:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shapeutil_edge_iterator.h:23:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2polygon.h:34,
                 from ../src/s2/s2shapeutil_conversion.h:28:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2shapeutil_visit_crossing_edge_pairs.cc -o s2/s2shapeutil_visit_crossing_edge_pairs.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2text_format.cc -o s2/s2text_format.o
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2shape.h:26,
                 from ../src/s2/s2shapeutil_get_reference_point.h:21,
                 from s2/s2shapeutil_get_reference_point.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2cell_id.h:42,
                 from ../src/s2/s2shape_index.h:60,
                 from ../src/s2/s2shapeutil_get_reference_point.h:22:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s2cell_id.h:45:
../src/s2/s2coords.h: In function ‘S2Point S2::FaceUVtoXYZ(int, double, double)’:
../src/s2/s2coords.h:356:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  356 | inline S2Point FaceUVtoXYZ(int face, double u, double v) {
      |                                                        ^
In file included from ../src/s2/s2polygon.h:43:
../src/s2/s2loop.h: In static member function ‘static std::vector<S2Point> S2Loop::kFull()’:
../src/s2/s2loop.h:698:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  698 |   return std::vector<S2Point>(1, kFullVertex());
      |                                  ~~~~~~~~~~~^~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
In file included from ../src/s2/r2rect.h:26,
                 from ../src/s2/s2crossing_edge_query.h:30,
                 from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:23,
                 from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2text_format.h:34,
                 from s2/s2text_format.cc:16:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2wedge_relations.cc -o s2/s2wedge_relations.o
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/s2padded_cell.h:23,
                 from ../src/s2/s2crossing_edge_query.h:31:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2edge_crosser.h:23,
                 from s2/s2shapeutil_visit_crossing_edge_pairs.cc:29:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2text_format.h:38:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2latlng_rect.h:31,
                 from ../src/s2/s2text_format.h:39:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
../src/s2/s2latlng_rect.h: In member function ‘S2LatLng S2LatLngRect::lo() const’:
../src/s2/s2latlng_rect.h:115:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  115 |   S2LatLng lo() const { return S2LatLng(lat_lo(), lng_lo()); }
      |                       ^
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2lax_polygon_shape.h:31,
                 from ../src/s2/s2text_format.h:40:
../src/s2/encoded_s2point_vector.h: In member function ‘S2Point s2coding::EncodedS2PointVector::operator[](int) const’:
../src/s2/encoded_s2point_vector.h:133:56: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  133 | inline S2Point EncodedS2PointVector::operator[](int i) const {
      |                                                        ^~~~~
In file included from ../src/s2/r2.h:22,
                 from ../src/s2/s2crossing_edge_query.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:142:20:   required from ‘util::math::internal_vector::BasicVector<Vector3, double, 3>::D util::math::internal_vector::operator-(const BasicVector<Vector3, double, 3>::D&)’
../src/s2/s2point.h:134:41:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/s2winding_operation.cc -o s2/s2winding_operation.o
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<Is ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<Is ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
In file included from ../src/s2/s2edge_crossings.h:48,
                 from ../src/s2/s2builder.h:40,
                 from ../src/s2/s2boolean_operation.h:26,
                 from ../src/s2/s2polygon.h:36,
                 from ../src/s2/s2lax_polygon_shape.h:36:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
s2/s2text_format.cc: In function ‘S2LatLng s2textformat::MakeLatLngOrDie(absl::s2_lts_20230802::string_view)’:
s2/s2text_format.cc:121:41: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  121 | S2LatLng MakeLatLngOrDie(string_view str) {
      |                                         ^
In file included from ../src/s2/s2wedge_relations.h:24,
                 from s2/s2wedge_relations.cc:18:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
In file included from ../src/s2/s2point.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/util/bits/bit-interleave.cc -o s2/util/bits/bit-interleave.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/util/coding/coder.cc -o s2/util/coding/coder.o
s2/s2text_format.cc: In function ‘bool s2textformat::ParseLatLngs(absl::s2_lts_20230802::string_view, std::vector<S2LatLng>*)’:
s2/s2text_format.cc:81:45: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
   81 |     latlngs->push_back(S2LatLng::FromDegrees(lat, lng));
      |                        ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
s2/s2text_format.cc: In function ‘bool s2textformat::ParsePoints(absl::s2_lts_20230802::string_view, std::vector<S2Point>*)’:
s2/s2text_format.cc:96:39: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   96 |     vertices->push_back(latlng.ToPoint());
      |                         ~~~~~~~~~~~~~~^~
s2/s2text_format.cc: In function ‘S2LatLng s2textformat::MakeLatLngOrDie(absl::s2_lts_20230802::string_view)’:
s2/s2text_format.cc:121:10: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  121 | S2LatLng MakeLatLngOrDie(string_view str) {
      |          ^~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:7: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/s2latlng_rect.h:399:34: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:21: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                     ^~~~~
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:19: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                   ^~~~~~~~~~
In file included from ../src/s2/s2polygon.h:43:
../src/s2/s2loop.h: In static member function ‘static std::vector<S2Point> S2Loop::kEmpty()’:
../src/s2/s2loop.h:694:46: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  694 |   return std::vector<S2Point>(1, kEmptyVertex());
      |                                  ~~~~~~~~~~~~^~
s2/s2text_format.cc: In function ‘std::string s2textformat::ToString(const S2LatLngRect&)’:
s2/s2text_format.cc:357:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  357 |   AppendVertex(rect.lo(), &out);
      |                ~~~~~~~^~
In file included from s2/s2text_format.cc:42:
../src/s2/s2point_vector_shape.h: In member function ‘virtual S2Shape::Edge EncodedS2PointVectorShape::edge(int) const’:
../src/s2/s2point_vector_shape.h:137:55: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  137 |   Edge edge(int e) const final { return Edge(points_[e], points_[e]); }
      |                                              ~~~~~~~~~^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/util/coding/varint.cc -o s2/util/coding/varint.o
../src/s2/s2latlng_rect.h: In constructor ‘S2LatLngRect::S2LatLngRect()’:
../src/s2/s2latlng_rect.h:399:56: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |                                       ~~~~~~~~~~~~~~~~~^~
../src/s2/s2latlng_rect.h:399:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  399 |     : lat_(R1Interval::Empty()), lng_(S1Interval::Empty()) {
      |            ~~~~~~~~~~~~~~~~~^~
s2/s2text_format.cc: In function ‘std::string s2textformat::ToString(const S2LatLngRect&)’:
s2/s2text_format.cc:357:23: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  357 |   AppendVertex(rect.lo(), &out);
      |                ~~~~~~~^~
In file included from ../src/s2/mutable_s2shape_index.h:39,
                 from ../src/s2/s2builder.h:36,
                 from ../src/s2/s2winding_operation.h:23,
                 from s2/s2winding_operation.cc:19:
../src/s2/r1interval.h: In static member function ‘static R1Interval R1Interval::Empty()’:
../src/s2/r1interval.h:54:29: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
   54 |   static R1Interval Empty() { return R1Interval(); }
      |                             ^
In file included from ../src/s2/mutable_s2shape_index.h:40:
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::lo() const’:
../src/s2/r2rect.h:68:22: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   68 |   R2Point lo() const { return R2Point(x().lo(), y().lo()); }
      |                      ^
../src/s2/r2rect.h: In static member function ‘static R2Rect R2Rect::Empty()’:
../src/s2/r2rect.h:184:29: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  184 | inline R2Rect R2Rect::Empty() {
      |                             ^
../src/s2/r2rect.h: In member function ‘R2Point R2Rect::GetVertex(int) const’:
../src/s2/r2rect.h:206:41: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  206 | inline R2Point R2Rect::GetVertex(int k) const {
      |                                         ^~~~~
../src/s2/r2rect.h: In member function ‘R2Rect R2Rect::Expanded(double) const’:
../src/s2/r2rect.h:233:47: note: parameter passing for argument of type ‘R2Rect’ when C++17 is enabled changed to match C++14 in GCC 10.1
  233 | inline R2Rect R2Rect::Expanded(double margin) const {
      |                                               ^~~~~
In file included from ../src/s2/s1angle.h:28,
                 from ../src/s2/s2cell_id.h:43,
                 from ../src/s2/mutable_s2shape_index.h:41:
../src/s2/s2point.h: In member function ‘S2Point S2Point::operator+(const S2Point&) const’:
../src/s2/s2point.h:128:45: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  128 |   S2Point operator+(const S2Point& b) const { return Base::operator+(b); }
      |                                             ^
In file included from ../src/s2/s2edge_crossings.h:42,
                 from ../src/s2/s2builder.h:40:
../src/s2/s1interval.h: In static member function ‘static S1Interval S1Interval::Empty()’:
../src/s2/s1interval.h:238:37: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  238 | inline S1Interval S1Interval::Empty() {
      |                                     ^
In file included from ../src/s2/s2edge_crossings.h:43:
../src/s2/s2latlng.h: In static member function ‘static constexpr S2LatLng S2LatLng::FromRadians(double, double)’:
../src/s2/s2latlng.h:198:67: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  198 |                                                 double lng_radians) {
      |                                                                   ^
../src/s2/s2latlng.h: In member function ‘S2LatLng::operator S2Point() const’:
../src/s2/s2latlng.h:256:37: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  256 | inline S2LatLng::operator S2Point() const {
      |                                     ^~~~~
../src/s2/s2latlng.h: In function ‘S2LatLng operator+(const S2LatLng&, const S2LatLng&)’:
../src/s2/s2latlng.h:260:63: note: parameter passing for argument of type ‘S2LatLng’ when C++17 is enabled changed to match C++14 in GCC 10.1
  260 | inline S2LatLng operator+(const S2LatLng& a, const S2LatLng& b) {
      |                                                               ^
In file included from ../src/s2/s2edge_crossings.h:44:
../src/s2/s2latlng_rect.h: In static member function ‘static R1Interval S2LatLngRect::FullLat()’:
../src/s2/s2latlng_rect.h:126:31: note: parameter passing for argument of type ‘R1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  126 |   static R1Interval FullLat() { return R1Interval(-M_PI_2, M_PI_2); }
      |                               ^
../src/s2/s2latlng_rect.h: In static member function ‘static S1Interval S2LatLngRect::FullLng()’:
../src/s2/s2latlng_rect.h:127:31: note: parameter passing for argument of type ‘S1Interval’ when C++17 is enabled changed to match C++14 in GCC 10.1
  127 |   static S1Interval FullLng() { return S1Interval::Full(); }
      |                               ^
In file included from ../src/s2/s2edge_crossings.h:48:
../src/s2/s2predicates_internal.h: In function ‘s2pred::Vector3_ld s2pred::ToLD(const S2Point&)’:
../src/s2/s2predicates_internal.h:63:47: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   63 | inline static Vector3_ld ToLD(const S2Point& x) {
      |                                               ^
In file included from ../src/s2/s2builder.h:41:
../src/s2/s2edge_distances.h: In function ‘S2Point S2::GetPointOnRay(const S2Point&, const S2Point&, S1ChordAngle)’:
../src/s2/s2edge_distances.h:258:44: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  258 |                              S1ChordAngle r) {
      |                                            ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/util/math/exactfloat/exactfloat.cc -o s2/util/math/exactfloat/exactfloat.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/util/math/mathutil.cc -o s2/util/math/mathutil.o
In file included from ../src/s2/r1interval.h:29:
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/s2point.h:128:69:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  136 |   D operator+(const D& b) const { return D(AsD()) += b; }
      |     ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::operator+(const D&) const [with VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/s2latlng.h:261:33:   required from here
../src/s2/util/math/vector.h:136:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
../src/s2/util/math/vector.h: In instantiation of ‘Vector3<T> Vector3<T>::CrossProd(const Vector3<T>&) const [with T = double]’:
../src/s2/s2predicates.h:396:3:   required from here
../src/s2/util/math/vector.h:470:11: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  470 |   Vector3 CrossProd(const Vector3& vb) const {
      |           ^~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’:
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:147:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  147 |   static D Cast(const VecTemplate<T2>& b) {
      |            ^~~~
../src/s2/util/math/vector.h: In instantiation of ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’:
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:342:9: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  342 | VT2<T2> operator*(const K& k, const BasicVector<VT2, T2, N2>& a) {
      |         ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’:
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:266:5: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  266 |   D MulScalarInternal(const K& k) const {
      |     ^~~~~~~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<long double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = long double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<long double>; F = util::math::internal_vector::BasicVector<Vector3, long double, 3>::Cast<double>(const Vector3<double>&)::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = long double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:148:20:   required from ‘static util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::Cast(const VecTemplate<T2>&) [with T2 = double; VecTemplate = Vector3; T = long double; long unsigned int N = 3; D = Vector3<long double>]’
../src/s2/s2predicates_internal.h:64:26:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’:
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:78:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   78 |   static R Generate(F f, As&&... as) {
      |            ^~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector2<double>; long unsigned int ...Is = {0, 1}; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector2; T = double; long unsigned int N = 2; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector2<double>; F = util::math::internal_vector::BasicVector<Vector2, double, 2>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector2<double>&}; VecTemplate = Vector2; T = double; long unsigned int N = 2]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector2; T = double; long unsigned int N = 2; D = Vector2<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector2; T2 = double; long unsigned int N2 = 2]’
../src/s2/s2latlng.h:269:25:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector2<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   70 |   static R GenerateEach(absl::index_sequence<Is...>, F f, As*... as) {
      |            ^~~~~~~~~~~~
../src/s2/util/math/vector.h: In instantiation of ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::GenerateEach(absl::s2_lts_20230802::index_sequence<I ...>, F, As* ...) [with R = Vector3<double>; long unsigned int ...Is = {0, 1, 2}; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const double}; VecTemplate = Vector3; T = double; long unsigned int N = 3; absl::s2_lts_20230802::index_sequence<I ...> = absl::s2_lts_20230802::integer_sequence<long unsigned int, 0, 1, 2>]’:
../src/s2/util/math/vector.h:79:27:   required from ‘static R util::math::internal_vector::BasicVector<VecTemplate, T, N>::Generate(F, As&& ...) [with R = Vector3<double>; F = util::math::internal_vector::BasicVector<Vector3, double, 3>::MulScalarInternal<double>(const double&) const::<lambda(const double&)>; As = {const Vector3<double>&}; VecTemplate = Vector3; T = double; long unsigned int N = 3]’
../src/s2/util/math/vector.h:267:20:   required from ‘util::math::internal_vector::BasicVector<VecTemplate, T, N>::D util::math::internal_vector::BasicVector<VecTemplate, T, N>::MulScalarInternal(const K&) const [with K = double; VecTemplate = Vector3; T = double; long unsigned int N = 3; D = Vector3<double>]’
../src/s2/util/math/vector.h:343:29:   required from ‘VT2<T2> util::math::internal_vector::operator*(const K&, const BasicVector<VT2, T2, N2>&) [with K = double; VT2 = Vector3; T2 = double; long unsigned int N2 = 3]’
../src/s2/s2edge_distances.h:272:20:   required from here
../src/s2/util/math/vector.h:70:12: note: parameter passing for argument of type ‘Vector3<double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
s2/s2text_format.cc: In function ‘bool s2textformat::ParsePoints(absl::s2_lts_20230802::string_view, std::vector<S2Point>*)’:
s2/s2text_format.cc:92:6: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
   92 | bool ParsePoints(string_view str, vector<S2Point>* vertices) {
      |      ^~~~~~~~~~~
In file included from ../src/s2/mutable_s2shape_index.h:45:
../src/s2/s2shape.h: In static member function ‘static S2Shape::ReferencePoint S2Shape::ReferencePoint::Contained(bool)’:
../src/s2/s2shape.h:131:53: note: parameter passing for argument of type ‘S2Point’ when C++17 is enabled changed to match C++14 in GCC 10.1
  131 |       return ReferencePoint(S2::Origin(), _contained);
      |                                                     ^
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/wk/include'    -I/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/include  -pthread -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c s2/util/units/length-units.cc -o s2/util/units/length-units.o
ar rcs s2/libs2static.a 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/s2buffer_operation.o s2/s2builder_graph.o s2/s2builder.o s2/s2builderutil_closed_set_normalizer.o s2/s2builderutil_find_polygon_degeneracies.o s2/s2builderutil_get_snapped_winding_delta.o s2/s2builderutil_lax_polygon_layer.o s2/s2builderutil_lax_polyline_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/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/s2hausdorff_distance_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/s2memory_tracker.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/s2shape_nesting_query.o s2/s2shapeutil_build_polygon_boundaries.o s2/s2shapeutil_coding.o s2/s2shapeutil_contains_brute_force.o s2/s2shapeutil_conversion.o s2/s2shapeutil_edge_iterator.o s2/s2shapeutil_get_reference_point.o s2/s2shapeutil_visit_crossing_edge_pairs.o s2/s2text_format.o s2/s2wedge_relations.o s2/s2winding_operation.o s2/util/bits/bit-interleave.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
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o s2.so 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-geog.o s2geography/accessors.o s2geography/build.o s2geography/coverings.o s2geography/distance.o s2geography/geography.o s2geography/linear-referencing.o s2geography/predicates.o -Ls2 -ls2static -L/tmp/RtmpYQDcPs/R.INSTALL1bed54449b6128/s2/tools/dist/lib -labsl_flags -labsl_flags_internal -labsl_flags_marshalling -labsl_flags_reflection -labsl_flags_private_handle_accessor -labsl_flags_commandlineflag -labsl_flags_commandlineflag_internal -labsl_flags_config -labsl_flags_program_name -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_log_internal_check_op -labsl_log_internal_conditions -labsl_log_internal_message -labsl_examine_stack -labsl_log_internal_format -labsl_log_internal_proto -labsl_log_internal_nullguard -labsl_log_internal_log_sink_set -labsl_log_internal_globals -labsl_log_globals -labsl_hash -labsl_city -labsl_bad_variant_access -labsl_low_level_hash -labsl_log_sink -labsl_log_entry -labsl_status -labsl_cord -labsl_cordz_info -labsl_cord_internal -labsl_cordz_functions -labsl_exponential_biased -labsl_cordz_handle -labsl_synchronization -labsl_graphcycles_internal -labsl_kernel_timeout_internal -labsl_time -labsl_civil_time -labsl_time_zone -labsl_crc_cord_state -labsl_crc32c -labsl_crc_internal -labsl_crc_cpu_detect -labsl_bad_optional_access -labsl_stacktrace -labsl_str_format_internal -labsl_strerror -labsl_symbolize -labsl_debugging_internal -labsl_demangle_internal -labsl_malloc_internal -labsl_strings -labsl_string_view -labsl_strings_internal -labsl_base -lrt -labsl_spinlock_wait -labsl_int128 -labsl_throw_delegate -labsl_raw_logging_internal -labsl_log_severity -lssl -lcrypto -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/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)
* installing *source* package ‘units’ ...
** package ‘units’ successfully unpacked and MD5 sums checked
** using staged installation
configure: units: 1.0-1
checking for default C++ standard... 201703
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ -std=gnu++17 accepts -g... yes
checking for g++ -std=gnu++17 option to enable C++11 features... none needed
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _Bool... no
checking for stdbool.h that conforms to C99 or later... yes
checking for error_at_line... yes
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking for brew... no
checking for XML_ParserCreate in -lexpat... yes
checking for udunits2.h... no
checking for udunits2/udunits2.h... no
checking for ut_read_xml in -ludunits2... no
configure: error: in '/tmp/RtmpD0vfK5/R.INSTALL1bfec53ba38079/units':
configure: error: 
--------------------------------------------------------------------------------
  Configuration failed because libudunits2.so was not found. Try installing:
    * deb: libudunits2-dev (Debian, Ubuntu, ...)
    * rpm: udunits2-devel (Fedora, EPEL, ...)
    * brew: udunits (OSX)
  If udunits2 is already installed in a non-standard location, use:
    --configure-args='--with-udunits2-lib=/usr/local/lib'
  if the library was not found, and/or:
    --configure-args='--with-udunits2-include=/usr/include/udunits2'
  if the header was not found, replacing paths with appropriate values.
  You can alternatively set UDUNITS2_INCLUDE and UDUNITS2_LIBS manually.
--------------------------------------------------------------------------------

See 'config.log' for more details
ERROR: configuration failed for package ‘units’
* removing ‘/home/ubuntu/R/library/units’
* installing *source* package ‘svUnit’ ...
** package ‘svUnit’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (svUnit)
* installing *source* package ‘bindr’ ...
** package ‘bindr’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (bindr)
* installing *source* package ‘tweenr’ ...
** package ‘tweenr’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c along.cpp -o along.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c at.cpp -o at.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c cpp11.cpp -o cpp11.o
gcc -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c easing.c -o easing.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c element.cpp -o element.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c element_at.cpp -o element_at.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c fill.cpp -o fill.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c state.cpp -o state.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o tweenr.so along.o at.o cpp11.o easing.o element.o element_at.o fill.o state.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-tweenr/00new/tweenr/libs
** R
** 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 (tweenr)
* installing *source* package ‘fs’ ...
** package ‘fs’ successfully unpacked and MD5 sums checked
** using staged installation
Found pkg-config cflags and libs!
Using PKG_CFLAGS=
Using PKG_LIBS=-luv -lpthread -ldl -lrt 
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c dir.cc -o dir.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c error.cc -o error.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c file.cc -o file.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c fs.cc -o fs.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c getmode.cc -o getmode.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c id.cc -o id.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.cc -o init.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c link.cc -o link.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c path.cc -o path.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c utils.cc -o utils.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I.       -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c unix/getmode.cc -o unix/getmode.o
gcc -I"/usr/share/R/include" -DNDEBUG -I.      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c bsd/setmode.c -o bsd/setmode.o
gcc -I"/usr/share/R/include" -DNDEBUG -I.      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c bsd/strmode.c -o bsd/strmode.o
gcc -I"/usr/share/R/include" -DNDEBUG -I.      -fvisibility=hidden -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c bsd/reallocarray.c -o bsd/reallocarray.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o fs.so dir.o error.o file.o fs.o getmode.o id.o init.o link.o path.o utils.o unix/getmode.o bsd/setmode.o bsd/strmode.o bsd/reallocarray.o -luv -lpthread -ldl -lrt -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-fs/00new/fs/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (fs)
* installing *source* package ‘httr2’ ...
** package ‘httr2’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (httr2)
* installing *source* package ‘whisker’ ...
** package ‘whisker’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (whisker)
* installing *source* package ‘lpSolve’ ...
** package ‘lpSolve’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c colamd.c -o colamd.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c commonlib.c -o commonlib.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c hbio.c -o hbio.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c ini.c -o ini.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.c -o init.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c isfixedvar.c -o isfixedvar.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_Hash.c -o lp_Hash.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_LUSOL.c -o lp_LUSOL.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_MDO.c -o lp_MDO.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_MPS.c -o lp_MPS.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_SOS.c -o lp_SOS.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_crash.c -o lp_crash.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_lib.c -o lp_lib.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_matrix.c -o lp_matrix.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_mipbb.c -o lp_mipbb.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_params.c -o lp_params.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_presolve.c -o lp_presolve.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_price.c -o lp_price.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_pricePSE.c -o lp_pricePSE.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_report.c -o lp_report.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_rlp.c -o lp_rlp.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_scale.c -o lp_scale.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_simplex.c -o lp_simplex.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_utils.c -o lp_utils.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lp_wlp.c -o lp_wlp.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lpslink56.c -o lpslink56.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lusol.c -o lusol.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c lusolio.c -o lusolio.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c mmio.c -o mmio.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c myblas.c -o myblas.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c sparselib.c -o sparselib.o
gcc -I"/usr/share/R/include" -DNDEBUG -I . -DINTEGERTIME -DPARSER_LP -DBUILDING_FOR_R -DYY_NEVER_INTERACTIVE -DUSRDLL -DCLOCKTIME -DRoleIsExternalInvEngine -DINVERSE_ACTIVE=INVERSE_LUSOL -DINLINE=static -DParanoia      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c yacc_read.c -o yacc_read.o
gcc -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o lpSolve.so colamd.o commonlib.o hbio.o ini.o init.o isfixedvar.o lp_Hash.o lp_LUSOL.o lp_MDO.o lp_MPS.o lp_SOS.o lp_crash.o lp_lib.o lp_matrix.o lp_mipbb.o lp_params.o lp_presolve.o lp_price.o lp_pricePSE.o lp_report.o lp_rlp.o lp_scale.o lp_simplex.o lp_utils.o lp_wlp.o lpslink56.o lusol.o lusolio.o mmio.o myblas.o sparselib.o yacc_read.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-lpSolve/00new/lpSolve/libs
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** 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 (lpSolve)
* installing *source* package ‘svglite’ ...
** package ‘svglite’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/systemfonts/include' -I'/home/ubuntu/R/library/textshaping/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c SvgStream.cpp -o SvgStream.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/systemfonts/include' -I'/home/ubuntu/R/library/textshaping/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c cpp11.cpp -o cpp11.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include' -I'/home/ubuntu/R/library/systemfonts/include' -I'/home/ubuntu/R/library/textshaping/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c devSVG.cpp -o devSVG.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o svglite.so SvgStream.o cpp11.o devSVG.o -lpng -lz -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-svglite/00new/svglite/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (svglite)
* installing *source* package ‘runjags’ ...
** package ‘runjags’ successfully unpacked and MD5 sums checked
** using staged installation
checking for pkg-config... /usr/bin/pkg-config
configure: WARNING: pkg-config file for jags unavailable
configure: WARNING: Consider adding the directory containing `jags.pc`
configure: WARNING: to the PKG_CONFIG_PATH environment variable
configure: Attempting legacy configuration of runjags
checking for jags... no
configure: error: "automatic detection of JAGS failed. Please use pkg-config to locate the JAGS library. See the INSTALL file for details."
ERROR: configuration failed for package ‘runjags’
* removing ‘/home/ubuntu/R/library/runjags’
* installing *source* package ‘rjags’ ...
** package ‘rjags’ successfully unpacked and MD5 sums checked
** using staged installation
checking for pkg-config... /usr/bin/pkg-config
configure: WARNING: pkg-config file for jags 4 unavailable
configure: WARNING: Consider adding the directory containing `jags.pc`
configure: WARNING: to the PKG_CONFIG_PATH environment variable
configure: Attempting legacy configuration of rjags
checking for jags... no
configure: error: "automatic detection of JAGS failed. Please use pkg-config to locate the JAGS library. See the INSTALL file for details."
ERROR: configuration failed for package ‘rjags’
* removing ‘/home/ubuntu/R/library/rjags’
* installing *source* package ‘ggrepel’ ...
** package ‘ggrepel’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/Rcpp/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/Rcpp/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c repel_boxes.cpp -o repel_boxes.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o ggrepel.so RcppExports.o repel_boxes.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-ggrepel/00new/ggrepel/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (ggrepel)
* installing *source* package ‘gifski’ ...
** package ‘gifski’ successfully unpacked and MD5 sums checked
** using staged installation
./configure: 6: rustc: not found
------------------ RUST COMPILER NOT FOUND --------------------

Cargo was not found on the PATH. Please install cargo / rustc:

 - yum install cargo         (Fedora/CentOS)
 - apt-get install cargo     (Debian/Ubuntu)
 - brew install rust         (MacOS)

Alternatively install Rust from: <https://www.rust-lang.org>

---------------------------------------------------------------

ERROR: configuration failed for package ‘gifski’
* removing ‘/home/ubuntu/R/library/gifski’
* installing *source* package ‘png’ ...
** package ‘png’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
gcc -I"/usr/share/R/include" -DNDEBUG       `libpng-config --cflags` -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c dummy.c -o dummy.o
gcc -I"/usr/share/R/include" -DNDEBUG       `libpng-config --cflags` -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c read.c -o read.o
gcc -I"/usr/share/R/include" -DNDEBUG       `libpng-config --cflags` -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c write.c -o write.o
gcc -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o png.so dummy.o read.o write.o -lpng16 -lm -lz -lm -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-png/00new/png/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** 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 (png)
* installing *source* package ‘sass’ ...
** package ‘sass’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
gcc -I"/usr/share/R/include" -DNDEBUG -I./libsass/include      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c compile.c -o compile.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I./libsass/include      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.cpp -o init.o
MAKEFLAGS= CC="gcc" CFLAGS="-g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3 " CXX="g++ -std=gnu++17" AR="ar" LDFLAGS="-Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro" make -C libsass
make[1]: Entering directory '/tmp/Rtmpg4zte0/R.INSTALL1c0b203e81be91/sass/src/libsass'
gcc -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -O2 -I ./include  -fPIC -c -o src/cencode.o src/cencode.c
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast.o src/ast.cpp
In file included from src/ast.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_values.o src/ast_values.cpp
In file included from src/ast_values.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_supports.o src/ast_supports.cpp
In file included from src/ast_supports.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_sel_cmp.o src/ast_sel_cmp.cpp
In file included from src/ast_selectors.hpp:7,
                 from src/ast_sel_cmp.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_sel_unify.o src/ast_sel_unify.cpp
In file included from src/ast_sel_unify.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_sel_super.o src/ast_sel_super.cpp
In file included from src/ast_sel_super.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_sel_weave.o src/ast_sel_weave.cpp
In file included from src/ast_sel_weave.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_selectors.o src/ast_selectors.cpp
In file included from src/ast_selectors.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/context.o src/context.cpp
In file included from src/context.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
In file included from src/expand.hpp:7,
                 from src/context.cpp:17:
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/constants.o src/constants.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_utils.o src/fn_utils.cpp
In file included from src/parser.hpp:11,
                 from src/fn_utils.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_miscs.o src/fn_miscs.cpp
In file included from src/fn_miscs.cpp:1:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
In file included from src/expand.hpp:7,
                 from src/fn_miscs.cpp:2:
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_maps.o src/fn_maps.cpp
In file included from src/values.hpp:4,
                 from src/operators.hpp:4,
                 from src/fn_maps.cpp:1:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_lists.o src/fn_lists.cpp
In file included from src/values.hpp:4,
                 from src/operators.hpp:4,
                 from src/fn_lists.cpp:6:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/operation.hpp:15,
                 from src/listize.hpp:9,
                 from src/fn_lists.cpp:5:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_colors.o src/fn_colors.cpp
In file included from src/fn_colors.cpp:6:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_numbers.o src/fn_numbers.cpp
In file included from src/fn_numbers.cpp:15:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_strings.o src/fn_strings.cpp
In file included from src/fn_strings.cpp:6:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/fn_selectors.o src/fn_selectors.cpp
In file included from src/parser.hpp:11,
                 from src/fn_selectors.cpp:3:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/color_maps.o src/color_maps.cpp
In file included from src/color_maps.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/environment.o src/environment.cpp
In file included from src/environment.cpp:2:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast_fwd_decl.o src/ast_fwd_decl.cpp
In file included from src/ast_fwd_decl.cpp:1:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/bind.o src/bind.cpp
In file included from src/bind.cpp:3:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/environment.hpp:11,
                 from src/bind.hpp:6,
                 from src/bind.cpp:2:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
In file included from src/expand.hpp:7,
                 from src/bind.cpp:6:
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/file.o src/file.cpp
In file included from src/context.hpp:7,
                 from src/file.cpp:21:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/util.o src/util.cpp
In file included from src/util.cpp:3:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/util_string.o src/util_string.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/json.o src/json.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/units.o src/units.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/values.o src/values.cpp
In file included from src/values.hpp:4,
                 from src/values.cpp:6:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/plugins.o src/plugins.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/source.o src/source.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/position.o src/position.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/lexer.o src/lexer.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/parser.o src/parser.cpp
In file included from src/parser.hpp:11,
                 from src/parser.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/parser_selectors.o src/parser_selectors.cpp
In file included from src/parser.hpp:11,
                 from src/parser_selectors.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/prelexer.o src/prelexer.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/eval.o src/eval.cpp
In file included from src/eval.hpp:7,
                 from src/eval.cpp:13:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/eval_selectors.o src/eval_selectors.cpp
In file included from src/expand.hpp:6,
                 from src/eval_selectors.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
In file included from src/expand.hpp:7:
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/expand.o src/expand.cpp
In file included from src/expand.cpp:8:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
In file included from src/expand.hpp:7,
                 from src/expand.cpp:9:
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/listize.o src/listize.cpp
In file included from src/context.hpp:7,
                 from src/listize.cpp:10:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/operation.hpp:15,
                 from src/listize.hpp:9,
                 from src/listize.cpp:9:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/cssize.o src/cssize.cpp
In file included from src/cssize.hpp:4,
                 from src/cssize.cpp:9:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/extender.o src/extender.cpp
In file included from src/extender.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/extension.o src/extension.cpp
In file included from src/extension.cpp:7:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/stylesheet.o src/stylesheet.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/output.o src/output.cpp
In file included from src/output.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/inspect.o src/inspect.cpp
In file included from src/inspect.cpp:12:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/emitter.o src/emitter.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/check_nesting.o src/check_nesting.cpp
In file included from src/check_nesting.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/remove_placeholders.o src/remove_placeholders.cpp
In file included from src/remove_placeholders.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/sass.o src/sass.cpp
In file included from src/context.hpp:7,
                 from src/sass.cpp:13:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/sass_values.o src/sass_values.cpp
In file included from src/eval.hpp:7,
                 from src/sass_values.cpp:8:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:18:
src/operation.hpp:206:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SelectorCombinator*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  206 |     T operator()(SelectorCombinator* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:194:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameters*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  194 |     T operator()(Parameters* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:193:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Parameter*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  193 |     T operator()(Parameter* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:183:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsCondition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  183 |     T operator()(SupportsCondition* x)     { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:176:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Color*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  176 |     T operator()(Color* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:173:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Error*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  173 |     T operator()(Custom_Error* x)           { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:172:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Custom_Warning*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  172 |     T operator()(Custom_Warning* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:168:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Function*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  168 |     T operator()(Function* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:163:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Mixin_Call*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  163 |     T operator()(Mixin_Call* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:162:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Definition*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  162 |     T operator()(Definition* x)             { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:161:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::ExtendRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  161 |     T operator()(ExtendRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:160:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Content*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  160 |     T operator()(Content* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:150:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import_Stub*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  150 |     T operator()(Import_Stub* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:149:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Import*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  149 |     T operator()(Import* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:147:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Declaration*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  147 |     T operator()(Declaration* x)            { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:146:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Keyframe_Rule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  146 |     T operator()(Keyframe_Rule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:145:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  145 |     T operator()(AtRule* x)              { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:144:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AtRootRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  144 |     T operator()(AtRootRule* x)          { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:143:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaQuery*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  143 |     T operator()(CssMediaQuery* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:142:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::CssMediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  142 |     T operator()(CssMediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:141:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::MediaRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  141 |     T operator()(MediaRule* x) { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:140:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::SupportsRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  140 |     T operator()(SupportsRule* x)         { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:139:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Trace*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  139 |     T operator()(Trace* x)                  { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:138:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::Bubble*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  138 |     T operator()(Bubble* x)                 { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:137:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::StyleRule*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  137 |     T operator()(StyleRule* x)                { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
src/operation.hpp:134:7: warning: ‘T Sass::Operation_CRTP<T, D>::operator()(Sass::AST_Node*) [with T = Sass::Expression*; D = Sass::Eval]’ was hidden [-Woverloaded-virtual=]
  134 |     T operator()(AST_Node* x)               { return static_cast<D*>(this)->fallback(x); }
      |       ^~~~~~~~
src/eval.hpp:96:17: note:   by ‘Sass::Eval::operator()’
   96 |     Expression* operator()(Parent_Reference*);
      |                 ^~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/sass_context.o src/sass_context.cpp
In file included from src/sass_context.cpp:4:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/sass_functions.o src/sass_functions.cpp
In file included from src/context.hpp:7,
                 from src/sass_functions.cpp:7:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/sass2scss.o src/sass2scss.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/backtrace.o src/backtrace.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/operators.o src/operators.cpp
In file included from src/values.hpp:4,
                 from src/operators.hpp:4,
                 from src/operators.cpp:6:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/ast2c.o src/ast2c.cpp
In file included from src/ast2c.cpp:6:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/operation.hpp:15,
                 from src/ast2c.hpp:5,
                 from src/ast2c.cpp:5:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/c2ast.o src/c2ast.cpp
In file included from src/c2ast.cpp:1:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/to_value.o src/to_value.cpp
In file included from src/to_value.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/source_map.o src/source_map.cpp
In file included from src/source_map.cpp:10:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/error_handling.o src/error_handling.cpp
In file included from src/error_handling.cpp:5:
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:165:18: note:   by ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:167:17: note:   by ‘bool Sass::Expression::operator!=(const Sass::Expression&) const’
  167 |     inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
      |                 ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:908:10: note:   by ‘bool Sass::CssMediaRule::operator==(const Sass::CssMediaRule&) const’
  908 |     bool operator== (const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:911:10: note:   by ‘bool Sass::CssMediaRule::operator!=(const Sass::CssMediaRule&) const’
  911 |     bool operator!=(const CssMediaRule& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:90:18: warning: ‘virtual bool Sass::AST_Node::operator==(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   90 |     virtual bool operator== (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:939:10: note:   by ‘bool Sass::CssMediaQuery::operator==(const Sass::CssMediaQuery&) const’
  939 |     bool operator== (const CssMediaQuery& rhs) const;
      |          ^~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast.hpp:940:10: note:   by ‘bool Sass::CssMediaQuery::operator!=(const Sass::CssMediaQuery&) const’
  940 |     bool operator!=(const CssMediaQuery& rhs) const {
      |          ^~~~~~~~
src/ast.hpp:165:18: warning: ‘virtual bool Sass::Expression::operator==(const Sass::Expression&) const’ was hidden [-Woverloaded-virtual=]
  165 |     virtual bool operator== (const Expression& rhs) const { return false; }
      |                  ^~~~~~~~
In file included from src/ast.hpp:14:
src/ast_def_macros.hpp:105:16: note:   by ‘virtual bool Sass::Selector::operator==(const Sass::Selector&) const’
  105 |   virtual bool operator==(const klass& rhs) const = 0; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast.hpp:96:18: warning: ‘virtual bool Sass::AST_Node::operator!=(const Sass::AST_Node&) const’ was hidden [-Woverloaded-virtual=]
   96 |     virtual bool operator!= (const AST_Node& rhs) const {
      |                  ^~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/ast.hpp:1055:
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PlaceholderSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PlaceholderSelector::operator!=(const Sass::PlaceholderSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:157:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  157 |     ATTACH_CMP_OPERATIONS(PlaceholderSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::TypeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::TypeSelector::operator!=(const Sass::TypeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:174:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  174 |     ATTACH_CMP_OPERATIONS(TypeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::ClassSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ClassSelector::operator!=(const Sass::ClassSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:188:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  188 |     ATTACH_CMP_OPERATIONS(ClassSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::IDSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::IDSelector::operator!=(const Sass::IDSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:204:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  204 |     ATTACH_CMP_OPERATIONS(IDSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::AttributeSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::AttributeSelector::operator!=(const Sass::AttributeSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:223:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  223 |     ATTACH_CMP_OPERATIONS(AttributeSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:137:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::CompoundSelector&) const’ was hidden [-Woverloaded-virtual=]
  137 |     virtual bool operator==(const CompoundSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:136:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::ComplexSelector&) const’ was hidden [-Woverloaded-virtual=]
  136 |     virtual bool operator==(const ComplexSelector& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:135:18: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::SelectorList&) const’ was hidden [-Woverloaded-virtual=]
  135 |     virtual bool operator==(const SelectorList& rhs) const;
      |                  ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_selectors.hpp:133:10: warning: ‘virtual bool Sass::SimpleSelector::operator==(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  133 |     bool operator==(const Selector& rhs) const final override;
      |          ^~~~~~~~
src/ast_def_macros.hpp:109:16: note:   by ‘Sass::PseudoSelector::operator==’
  109 |   virtual bool operator==(const klass& rhs) const; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SimpleSelector::operator!=(const Sass::SimpleSelector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:139:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  139 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SimpleSelector);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::PseudoSelector::operator!=(const Sass::PseudoSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:262:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  262 |     ATTACH_CMP_OPERATIONS(PseudoSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::ComplexSelector::operator!=(const Sass::ComplexSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:310:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  310 |     ATTACH_CMP_OPERATIONS(ComplexSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::Selector::operator!=(const Sass::Selector&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:56:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
   56 |     ATTACH_VIRTUAL_CMP_OPERATIONS(Selector)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: note:   by ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::SelectorCombinator::operator!=(const Sass::SelectorCombinator&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:407:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  407 |     ATTACH_CMP_OPERATIONS(SelectorCombinator)
      |     ^~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:106:16: warning: ‘virtual bool Sass::SelectorComponent::operator!=(const Sass::SelectorComponent&) const’ was hidden [-Woverloaded-virtual=]
  106 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:349:5: note: in expansion of macro ‘ATTACH_VIRTUAL_CMP_OPERATIONS’
  349 |     ATTACH_VIRTUAL_CMP_OPERATIONS(SelectorComponent);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ast_def_macros.hpp:110:16: note:   by ‘virtual bool Sass::CompoundSelector::operator!=(const Sass::CompoundSelector&) const’
  110 |   virtual bool operator!=(const klass& rhs) const { return !(*this == rhs); }; \
      |                ^~~~~~~~
src/ast_selectors.hpp:459:5: note: in expansion of macro ‘ATTACH_CMP_OPERATIONS’
  459 |     ATTACH_CMP_OPERATIONS(CompoundSelector)
      |     ^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/memory/allocator.o src/memory/allocator.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/memory/shared_ptr.o src/memory/shared_ptr.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/utf8_string.o src/utf8_string.cpp
g++ -std=gnu++17 -Wall -O2 -std=c++11 -I ./include  -fPIC -c -o src/base64vlq.o src/base64vlq.cpp
mkdir lib
ar rcvs lib/libsass.a src/cencode.o src/ast.o src/ast_values.o src/ast_supports.o src/ast_sel_cmp.o src/ast_sel_unify.o src/ast_sel_super.o src/ast_sel_weave.o src/ast_selectors.o src/context.o src/constants.o src/fn_utils.o src/fn_miscs.o src/fn_maps.o src/fn_lists.o src/fn_colors.o src/fn_numbers.o src/fn_strings.o src/fn_selectors.o src/color_maps.o src/environment.o src/ast_fwd_decl.o src/bind.o src/file.o src/util.o src/util_string.o src/json.o src/units.o src/values.o src/plugins.o src/source.o src/position.o src/lexer.o src/parser.o src/parser_selectors.o src/prelexer.o src/eval.o src/eval_selectors.o src/expand.o src/listize.o src/cssize.o src/extender.o src/extension.o src/stylesheet.o src/output.o src/inspect.o src/emitter.o src/check_nesting.o src/remove_placeholders.o src/sass.o src/sass_values.o src/sass_context.o src/sass_functions.o src/sass2scss.o src/backtrace.o src/operators.o src/ast2c.o src/c2ast.o src/to_value.o src/source_map.o src/error_handling.o src/memory/allocator.o src/memory/shared_ptr.o src/utf8_string.o src/base64vlq.o
a - src/cencode.o
a - src/ast.o
a - src/ast_values.o
a - src/ast_supports.o
a - src/ast_sel_cmp.o
a - src/ast_sel_unify.o
a - src/ast_sel_super.o
a - src/ast_sel_weave.o
a - src/ast_selectors.o
a - src/context.o
a - src/constants.o
a - src/fn_utils.o
a - src/fn_miscs.o
a - src/fn_maps.o
a - src/fn_lists.o
a - src/fn_colors.o
a - src/fn_numbers.o
a - src/fn_strings.o
a - src/fn_selectors.o
a - src/color_maps.o
a - src/environment.o
a - src/ast_fwd_decl.o
a - src/bind.o
a - src/file.o
a - src/util.o
a - src/util_string.o
a - src/json.o
a - src/units.o
a - src/values.o
a - src/plugins.o
a - src/source.o
a - src/position.o
a - src/lexer.o
a - src/parser.o
a - src/parser_selectors.o
a - src/prelexer.o
a - src/eval.o
a - src/eval_selectors.o
a - src/expand.o
a - src/listize.o
a - src/cssize.o
a - src/extender.o
a - src/extension.o
a - src/stylesheet.o
a - src/output.o
a - src/inspect.o
a - src/emitter.o
a - src/check_nesting.o
a - src/remove_placeholders.o
a - src/sass.o
a - src/sass_values.o
a - src/sass_context.o
a - src/sass_functions.o
a - src/sass2scss.o
a - src/backtrace.o
a - src/operators.o
a - src/ast2c.o
a - src/c2ast.o
a - src/to_value.o
a - src/source_map.o
a - src/error_handling.o
a - src/memory/allocator.o
a - src/memory/shared_ptr.o
a - src/utf8_string.o
a - src/base64vlq.o
make[1]: Leaving directory '/tmp/Rtmpg4zte0/R.INSTALL1c0b203e81be91/sass/src/libsass'
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o sass.so compile.o init.o ./libsass/lib/libsass.a -L/usr/lib/R/lib -lR
rm -f libsass/lib/libsass.a
installing to /home/ubuntu/R/library/00LOCK-sass/00new/sass/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (sass)
* installing *source* package ‘pkgload’ ...
** package ‘pkgload’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (pkgload)
* installing *source* package ‘lme4’ ...
** package ‘lme4’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/usr/lib/R/library/Matrix/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include'    -DNDEBUG -DEIGEN_DONT_VECTORIZE -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c external.cpp -o external.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/usr/lib/R/library/Matrix/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include'    -DNDEBUG -DEIGEN_DONT_VECTORIZE -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c glmFamily.cpp -o glmFamily.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/usr/lib/R/library/Matrix/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include'    -DNDEBUG -DEIGEN_DONT_VECTORIZE -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c optimizer.cpp -o optimizer.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/usr/lib/R/library/Matrix/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include'    -DNDEBUG -DEIGEN_DONT_VECTORIZE -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c predModule.cpp -o predModule.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/usr/lib/R/library/Matrix/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include'    -DNDEBUG -DEIGEN_DONT_VECTORIZE -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c respModule.cpp -o respModule.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o lme4.so external.o glmFamily.o optimizer.o predModule.o respModule.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-lme4/00new/lme4/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** 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 (lme4)
* installing *source* package ‘downlit’ ...
** package ‘downlit’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (downlit)
ERROR: dependency ‘units’ is not available for package ‘sf’
* removing ‘/home/ubuntu/R/library/sf’
* installing *source* package ‘arrayhelpers’ ...
** package ‘arrayhelpers’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (arrayhelpers)
ERROR: dependency ‘rjags’ is not available for package ‘jagsUI’
* removing ‘/home/ubuntu/R/library/jagsUI’
* installing *source* package ‘bindrcpp’ ...
** package ‘bindrcpp’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../inst/include -I. -I'/home/ubuntu/R/library/Rcpp/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../inst/include -I. -I'/home/ubuntu/R/library/Rcpp/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c create.cpp -o create.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../inst/include -I. -I'/home/ubuntu/R/library/Rcpp/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c test.cpp -o test.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o bindrcpp.so RcppExports.o create.o test.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-bindrcpp/00new/bindrcpp/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** 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 (bindrcpp)
* installing *source* package ‘bslib’ ...
** package ‘bslib’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** 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
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (bslib)
* installing *source* package ‘testthat’ ...
** package ‘testthat’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
gcc -I"/usr/share/R/include" -DNDEBUG -I../inst/include -DCOMPILING_TESTTHAT      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.c -o init.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../inst/include -DCOMPILING_TESTTHAT      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c test-catch.cpp -o test-catch.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../inst/include -DCOMPILING_TESTTHAT      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c test-example.cpp -o test-example.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I../inst/include -DCOMPILING_TESTTHAT      -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c test-runner.cpp -o test-runner.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o testthat.so init.o test-catch.o test-example.o test-runner.o -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-testthat/00new/testthat/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** 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 (testthat)
ERROR: dependency ‘sf’ is not available for package ‘transformr’
* removing ‘/home/ubuntu/R/library/transformr’
* installing *source* package ‘tidybayes’ ...
** package ‘tidybayes’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (tidybayes)
* installing *source* package ‘shiny’ ...
** package ‘shiny’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** 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
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (shiny)
* installing *source* package ‘vdiffr’ ...
** package ‘vdiffr’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c compare.cpp -o compare.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c cpp11.cpp -o cpp11.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c devSVG.cpp -o devSVG.o
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG  -I'/home/ubuntu/R/library/cpp11/include'     -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c engine_version.cpp -o engine_version.o
g++ -std=gnu++17 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o vdiffr.so compare.o cpp11.o devSVG.o engine_version.o -lpng -lz -L/usr/lib/R/lib -lR
installing to /home/ubuntu/R/library/00LOCK-vdiffr/00new/vdiffr/libs
** R
** 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 (vdiffr)
* installing *source* package ‘rmarkdown’ ...
** package ‘rmarkdown’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (rmarkdown)
ERROR: dependency ‘transformr’ is not available for package ‘gganimate’
* removing ‘/home/ubuntu/R/library/gganimate’
* installing *source* package ‘htmlwidgets’ ...
** package ‘htmlwidgets’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (htmlwidgets)
* installing *source* package ‘miniUI’ ...
** package ‘miniUI’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (miniUI)
* installing *source* package ‘shinyjs’ ...
** package ‘shinyjs’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (shinyjs)
* installing *source* package ‘shinythemes’ ...
** package ‘shinythemes’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (shinythemes)
* installing *source* package ‘pkgdown’ ...
** package ‘pkgdown’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (pkgdown)
* installing *source* package ‘colourpicker’ ...
** package ‘colourpicker’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (colourpicker)
* installing *source* package ‘DT’ ...
** package ‘DT’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (DT)
* installing *source* package ‘dygraphs’ ...
** package ‘dygraphs’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (dygraphs)
* installing *source* package ‘threejs’ ...
** package ‘threejs’ successfully unpacked and MD5 sums checked
** using staged installation
** R
** data
** demo
** inst
** byte-compile and prepare package for lazy loading
Creating a generic function for ‘vertices’ from package ‘igraph’ in package ‘threejs’
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (threejs)
* installing *source* package ‘shinystan’ ...
** package ‘shinystan’ successfully unpacked and MD5 sums checked
** using staged installation
** 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
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (shinystan)
* installing *source* package ‘rstanarm’ ...
** package ‘rstanarm’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0’
using C++17


g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I"../inst/include" -I"/home/ubuntu/R/library/StanHeaders/include/src" -DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG -DBOOST_MATH_OVERFLOW_ERROR_POLICY=errno_on_error -DUSE_STANC3 -D_HAS_AUTO_PTR_ETC=0 -I'/home/ubuntu/R/library/StanHeaders/include' -I'/home/ubuntu/R/library/rstan/include' -I'/home/ubuntu/R/library/BH/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include' -I'/home/ubuntu/R/library/RcppParallel/include'     -I'/home/ubuntu/R/library/RcppParallel/include' -D_REENTRANT -DSTAN_THREADS   -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c init.cpp -o init.o


g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I"../inst/include" -I"/home/ubuntu/R/library/StanHeaders/include/src" -DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG -DBOOST_MATH_OVERFLOW_ERROR_POLICY=errno_on_error -DUSE_STANC3 -D_HAS_AUTO_PTR_ETC=0 -I'/home/ubuntu/R/library/StanHeaders/include' -I'/home/ubuntu/R/library/rstan/include' -I'/home/ubuntu/R/library/BH/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include' -I'/home/ubuntu/R/library/RcppParallel/include'     -I'/home/ubuntu/R/library/RcppParallel/include' -D_REENTRANT -DSTAN_THREADS   -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c stanExports_bernoulli.cc -o stanExports_bernoulli.o


g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I"../inst/include" -I"/home/ubuntu/R/library/StanHeaders/include/src" -DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG -DBOOST_MATH_OVERFLOW_ERROR_POLICY=errno_on_error -DUSE_STANC3 -D_HAS_AUTO_PTR_ETC=0 -I'/home/ubuntu/R/library/StanHeaders/include' -I'/home/ubuntu/R/library/rstan/include' -I'/home/ubuntu/R/library/BH/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include' -I'/home/ubuntu/R/library/RcppParallel/include'     -I'/home/ubuntu/R/library/RcppParallel/include' -D_REENTRANT -DSTAN_THREADS   -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c stanExports_binomial.cc -o stanExports_binomial.o


g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I"../inst/include" -I"/home/ubuntu/R/library/StanHeaders/include/src" -DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG -DBOOST_MATH_OVERFLOW_ERROR_POLICY=errno_on_error -DUSE_STANC3 -D_HAS_AUTO_PTR_ETC=0 -I'/home/ubuntu/R/library/StanHeaders/include' -I'/home/ubuntu/R/library/rstan/include' -I'/home/ubuntu/R/library/BH/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include' -I'/home/ubuntu/R/library/RcppParallel/include'     -I'/home/ubuntu/R/library/RcppParallel/include' -D_REENTRANT -DSTAN_THREADS   -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c stanExports_continuous.cc -o stanExports_continuous.o


g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I"../inst/include" -I"/home/ubuntu/R/library/StanHeaders/include/src" -DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG -DBOOST_MATH_OVERFLOW_ERROR_POLICY=errno_on_error -DUSE_STANC3 -D_HAS_AUTO_PTR_ETC=0 -I'/home/ubuntu/R/library/StanHeaders/include' -I'/home/ubuntu/R/library/rstan/include' -I'/home/ubuntu/R/library/BH/include' -I'/home/ubuntu/R/library/Rcpp/include' -I'/home/ubuntu/R/library/RcppEigen/include' -I'/home/ubuntu/R/library/RcppParallel/include'     -I'/home/ubuntu/R/library/RcppParallel/include' -D_REENTRANT -DSTAN_THREADS   -fPIC  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/build/r-base-Io6aw0/r-base-4.3.3=/usr/src/r-base-4.3.3-2build2 -Wdate-time -D_FORTIFY_SOURCE=3  -c stanExports_count.cc -o stanExports_count.o


In file included from /home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/time_clock.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/posix_time/posix_time_types.hpp:10,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:15,
                 from /home/ubuntu/R/library/rstan/include/rstan/rstaninc.hpp:4,
                 from stanExports_bernoulli.h:23,
                 from stanExports_bernoulli.cc:5:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/detail/shared_count.hpp:294:33: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  294 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/include/c++/13/memory:78,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:7:
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  354 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  365 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  423 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  430 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function ‘boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)’:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  432 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/time_clock.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/posix_time/posix_time_types.hpp:10,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:15,
                 from /home/ubuntu/R/library/rstan/include/rstan/rstaninc.hpp:4,
                 from stanExports_binomial.h:23,
                 from stanExports_binomial.cc:5:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/detail/shared_count.hpp:294:33: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  294 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/include/c++/13/memory:78,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:7:
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  354 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  365 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  423 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  430 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function ‘boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)’:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  432 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/time_clock.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/posix_time/posix_time_types.hpp:10,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:15,
                 from /home/ubuntu/R/library/rstan/include/rstan/rstaninc.hpp:4,
                 from stanExports_continuous.h:23,
                 from stanExports_continuous.cc:5:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/detail/shared_count.hpp:294:33: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  294 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/include/c++/13/memory:78,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:7:
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  354 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  365 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  423 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  430 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function ‘boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)’:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  432 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/shared_ptr.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/time_clock.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/date_time/posix_time/posix_time_types.hpp:10,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:15,
                 from /home/ubuntu/R/library/rstan/include/rstan/rstaninc.hpp:4,
                 from stanExports_count.h:23,
                 from stanExports_count.cc:5:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/detail/shared_count.hpp:294:33: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  294 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/include/c++/13/memory:78,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:7:
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  354 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  365 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  423 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  430 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function ‘boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)’:
/home/ubuntu/R/library/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  432 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/detail/that_ptr.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/invoke.hpp:52,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/adapter/fused.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/generation/make_fused.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/include/make_fused.hpp:11,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:30,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/state_wrapper.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/ublas_wrapper.hpp:33,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint.hpp:25,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/ode_rk45.hpp:9,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/integrate_ode_rk45.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor.hpp:16,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:15,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/dump.hpp:7,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:43:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp: At global scope:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp:48:40: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
   48 | template<class T> T * get_pointer(std::auto_ptr<T> const& p)
      |                                        ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/detail/that_ptr.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/invoke.hpp:52,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/adapter/fused.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/generation/make_fused.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/include/make_fused.hpp:11,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:30,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/state_wrapper.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/ublas_wrapper.hpp:33,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint.hpp:25,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/ode_rk45.hpp:9,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/integrate_ode_rk45.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor.hpp:16,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:15,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/dump.hpp:7,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:43:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp: At global scope:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp:48:40: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
   48 | template<class T> T * get_pointer(std::auto_ptr<T> const& p)
      |                                        ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/detail/that_ptr.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/invoke.hpp:52,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/adapter/fused.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/generation/make_fused.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/include/make_fused.hpp:11,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:30,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/state_wrapper.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/ublas_wrapper.hpp:33,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint.hpp:25,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/ode_rk45.hpp:9,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/integrate_ode_rk45.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor.hpp:16,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:15,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/dump.hpp:7,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:43:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp: At global scope:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp:48:40: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
   48 | template<class T> T * get_pointer(std::auto_ptr<T> const& p)
      |                                        ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/detail/that_ptr.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/invocation/invoke.hpp:52,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/adapter/fused.hpp:17,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/functional/generation/make_fused.hpp:13,
                 from /home/ubuntu/R/library/BH/include/boost/fusion/include/make_fused.hpp:11,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:30,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/state_wrapper.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/ublas_wrapper.hpp:33,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint.hpp:25,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/ode_rk45.hpp:9,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor/integrate_ode_rk45.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/functor.hpp:16,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:15,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/dump.hpp:7,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:43:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp: At global scope:
/home/ubuntu/R/library/BH/include/boost/get_pointer.hpp:48:40: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
   48 | template<class T> T * get_pointer(std::auto_ptr<T> const& p)
      |                                        ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: note: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/concept/assert.hpp:35,
                 from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:19,
                 from /home/ubuntu/R/library/BH/include/boost/range/size_type.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/size.hpp:21,
                 from /home/ubuntu/R/library/BH/include/boost/range/functions.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range.hpp:18,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:24:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:81:13:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string.hpp:23,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:4,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:46:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >; IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:98:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FormatterConcept<boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >, boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:103:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:65:18: note: in a call to non-static member function ‘void boost::algorithm::FormatterConcept<FormatterT, FinderT, IteratorT>::constraints() [with FormatterT = boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >; FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   65 |             void constraints()
      |                  ^~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/concept/assert.hpp:35,
                 from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:19,
                 from /home/ubuntu/R/library/BH/include/boost/range/size_type.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/size.hpp:21,
                 from /home/ubuntu/R/library/BH/include/boost/range/functions.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range.hpp:18,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:24:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:81:13:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string.hpp:23,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:4,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:46:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >; IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:98:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FormatterConcept<boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >, boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:103:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:65:18: note: in a call to non-static member function ‘void boost::algorithm::FormatterConcept<FormatterT, FinderT, IteratorT>::constraints() [with FormatterT = boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >; FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   65 |             void constraints()
      |                  ^~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:11,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_2F1.hpp:18,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/grad_2F1.hpp:14,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:129,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:14:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp: In instantiation of ‘std::pair<_ForwardIterator, _ForwardIterator> boost::math::detail::hypergeometric_pFq_checked_series_impl(const Seq&, const Seq&, const Real&, const Policy&, const Terminal&, long long int&) [with Seq = std::vector<double>; Real = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>; Terminal = iteration_terminator]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:107:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:72:35:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*) [with Seq = std::vector<double>; Real = double; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:55:41:   required from ‘stan::return_type_t<T_x, T_sigma, T_l> stan::math::hypergeometric_pFq(const Ta&, const Tb&, const Tz&) [with Ta = Eigen::Matrix<double, -1, 1>; Tb = Eigen::Matrix<double, -1, 1>; Tz = double; stan::require_all_eigen_st<std::is_arithmetic, Ta, Tb>* <anonymous> = 0; stan::require_arithmetic_t<Tz>* <anonymous> = 0; stan::return_type_t<T_x, T_sigma, T_l> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:125:28:   required from ‘auto stan::math::hypergeometric_3F2(const Ta&, const Tb&, const Tz&) [with Ta = std::vector<double>; Tb = std::vector<double>; Tz = double; stan::require_all_vector_t<T_y, T_high>* <anonymous> = 0; stan::require_stan_scalar_t<T2>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:148:28:   required from ‘auto stan::math::hypergeometric_3F2(const std::initializer_list<_Tp>&, const std::initializer_list<_Value>&, const Tz&) [with Ta = double; Tb = double; Tz = double; stan::require_all_stan_scalar_t<Ta, Tb, Tz>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/rev/fun/inv_inc_beta.hpp:77:0:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp:122:28: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  122 |      std::pair<Real, Real> hypergeometric_pFq_checked_series_impl(const Seq& aj, const Seq& bj, const Real& z, const Policy& pol, const Terminal& termination, long long& log_scale)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:11,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_2F1.hpp:18,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/grad_2F1.hpp:14,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:129,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:14:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp: In instantiation of ‘std::pair<_ForwardIterator, _ForwardIterator> boost::math::detail::hypergeometric_pFq_checked_series_impl(const Seq&, const Seq&, const Real&, const Policy&, const Terminal&, long long int&) [with Seq = std::vector<double>; Real = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>; Terminal = iteration_terminator]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:107:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:72:35:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*) [with Seq = std::vector<double>; Real = double; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:55:41:   required from ‘stan::return_type_t<T_x, T_sigma, T_l> stan::math::hypergeometric_pFq(const Ta&, const Tb&, const Tz&) [with Ta = Eigen::Matrix<double, -1, 1>; Tb = Eigen::Matrix<double, -1, 1>; Tz = double; stan::require_all_eigen_st<std::is_arithmetic, Ta, Tb>* <anonymous> = 0; stan::require_arithmetic_t<Tz>* <anonymous> = 0; stan::return_type_t<T_x, T_sigma, T_l> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:125:28:   required from ‘auto stan::math::hypergeometric_3F2(const Ta&, const Tb&, const Tz&) [with Ta = std::vector<double>; Tb = std::vector<double>; Tz = double; stan::require_all_vector_t<T_y, T_high>* <anonymous> = 0; stan::require_stan_scalar_t<T2>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:148:28:   required from ‘auto stan::math::hypergeometric_3F2(const std::initializer_list<_Tp>&, const std::initializer_list<_Value>&, const Tz&) [with Ta = double; Tb = double; Tz = double; stan::require_all_stan_scalar_t<Ta, Tb, Tz>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/rev/fun/inv_inc_beta.hpp:77:0:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp:122:28: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  122 |      std::pair<Real, Real> hypergeometric_pFq_checked_series_impl(const Seq& aj, const Seq& bj, const Real& z, const Policy& pol, const Terminal& termination, long long& log_scale)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/concept/assert.hpp:35,
                 from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:19,
                 from /home/ubuntu/R/library/BH/include/boost/range/size_type.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/size.hpp:21,
                 from /home/ubuntu/R/library/BH/include/boost/range/functions.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range.hpp:18,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:24:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:81:13:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string.hpp:23,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:4,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:46:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >; IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:98:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FormatterConcept<boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >, boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:103:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:65:18: note: in a call to non-static member function ‘void boost::algorithm::FormatterConcept<FormatterT, FinderT, IteratorT>::constraints() [with FormatterT = boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >; FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   65 |             void constraints()
      |                  ^~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/concept/assert.hpp:35,
                 from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:19,
                 from /home/ubuntu/R/library/BH/include/boost/range/size_type.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range/size.hpp:21,
                 from /home/ubuntu/R/library/BH/include/boost/range/functions.hpp:20,
                 from /home/ubuntu/R/library/BH/include/boost/range.hpp:18,
                 from /home/ubuntu/R/library/BH/include/boost/numeric/odeint/util/resize.hpp:24:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:81:13:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:26,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/algorithm/string.hpp:23,
                 from /home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:4,
                 from /home/ubuntu/R/library/rstan/include/rstan/stan_fit.hpp:46:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >; IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:98:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:40:18: note: in a call to non-static member function ‘void boost::algorithm::FinderConcept<FinderT, IteratorT>::constraints() [with FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   40 |             void constraints()
      |                  ^~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FormatterConcept<boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >, boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_format.hpp:103:13:   required from ‘void boost::algorithm::find_format(SequenceT&, FinderT, FormatterT) [with SequenceT = std::__cxx11::basic_string<char>; FinderT = detail::first_finderF<const char*, is_equal>; FormatterT = detail::const_formatF<boost::iterator_range<const char*> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/replace.hpp:179:44:   required from ‘void boost::algorithm::replace_first(SequenceT&, const Range1T&, const Range2T&) [with SequenceT = std::__cxx11::basic_string<char>; Range1T = char [11]; Range2T = char [1]]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:133:29:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:65:52: warning: ‘this’ pointer is null [-Wnonnull]
   65 |     static void failed() { ((Model*)0)->constraints(); }
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/algorithm/string/concept.hpp:65:18: note: in a call to non-static member function ‘void boost::algorithm::FormatterConcept<FormatterT, FinderT, IteratorT>::constraints() [with FormatterT = boost::algorithm::detail::const_formatF<boost::iterator_range<const char*> >; FinderT = boost::algorithm::detail::first_finderF<const char*, boost::algorithm::is_equal>; IteratorT = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
   65 |             void constraints()
      |                  ^~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:11,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_2F1.hpp:18,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/grad_2F1.hpp:14,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:129,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:14:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp: In instantiation of ‘std::pair<_ForwardIterator, _ForwardIterator> boost::math::detail::hypergeometric_pFq_checked_series_impl(const Seq&, const Seq&, const Real&, const Policy&, const Terminal&, long long int&) [with Seq = std::vector<double>; Real = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>; Terminal = iteration_terminator]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:107:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:72:35:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*) [with Seq = std::vector<double>; Real = double; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:55:41:   required from ‘stan::return_type_t<T_x, T_sigma, T_l> stan::math::hypergeometric_pFq(const Ta&, const Tb&, const Tz&) [with Ta = Eigen::Matrix<double, -1, 1>; Tb = Eigen::Matrix<double, -1, 1>; Tz = double; stan::require_all_eigen_st<std::is_arithmetic, Ta, Tb>* <anonymous> = 0; stan::require_arithmetic_t<Tz>* <anonymous> = 0; stan::return_type_t<T_x, T_sigma, T_l> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:125:28:   required from ‘auto stan::math::hypergeometric_3F2(const Ta&, const Tb&, const Tz&) [with Ta = std::vector<double>; Tb = std::vector<double>; Tz = double; stan::require_all_vector_t<T_y, T_high>* <anonymous> = 0; stan::require_stan_scalar_t<T2>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:148:28:   required from ‘auto stan::math::hypergeometric_3F2(const std::initializer_list<_Tp>&, const std::initializer_list<_Value>&, const Tz&) [with Ta = double; Tb = double; Tz = double; stan::require_all_stan_scalar_t<Ta, Tb, Tz>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/rev/fun/inv_inc_beta.hpp:77:0:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp:122:28: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  122 |      std::pair<Real, Real> hypergeometric_pFq_checked_series_impl(const Seq& aj, const Seq& bj, const Real& z, const Policy& pol, const Terminal& termination, long long& log_scale)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:11,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_2F1.hpp:18,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/grad_2F1.hpp:14,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:129,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim.hpp:14:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp: In instantiation of ‘std::pair<_ForwardIterator, _ForwardIterator> boost::math::detail::hypergeometric_pFq_checked_series_impl(const Seq&, const Seq&, const Real&, const Policy&, const Terminal&, long long int&) [with Seq = std::vector<double>; Real = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>; Terminal = iteration_terminator]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:107:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:72:35:   required from ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*) [with Seq = std::vector<double>; Real = double; typename tools::promote_args<Real, typename Seq::value_type>::type = double; typename Seq::value_type = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_pFq.hpp:55:41:   required from ‘stan::return_type_t<T_x, T_sigma, T_l> stan::math::hypergeometric_pFq(const Ta&, const Tb&, const Tz&) [with Ta = Eigen::Matrix<double, -1, 1>; Tb = Eigen::Matrix<double, -1, 1>; Tz = double; stan::require_all_eigen_st<std::is_arithmetic, Ta, Tb>* <anonymous> = 0; stan::require_arithmetic_t<Tz>* <anonymous> = 0; stan::return_type_t<T_x, T_sigma, T_l> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:125:28:   required from ‘auto stan::math::hypergeometric_3F2(const Ta&, const Tb&, const Tz&) [with Ta = std::vector<double>; Tb = std::vector<double>; Tz = double; stan::require_all_vector_t<T_y, T_high>* <anonymous> = 0; stan::require_stan_scalar_t<T2>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/hypergeometric_3F2.hpp:148:28:   required from ‘auto stan::math::hypergeometric_3F2(const std::initializer_list<_Tp>&, const std::initializer_list<_Value>&, const Tz&) [with Ta = double; Tb = double; Tz = double; stan::require_all_stan_scalar_t<Ta, Tb, Tz>* <anonymous> = 0]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/rev/fun/inv_inc_beta.hpp:77:0:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/hypergeometric_pFq_checked_series.hpp:122:28: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  122 |      std::pair<Real, Real> hypergeometric_pFq_checked_series_impl(const Seq& aj, const Seq& bj, const Real& z, const Policy& pol, const Terminal& termination, long long& log_scale)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/bessel_jy.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/math/special_functions/bessel.hpp:26,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/bessel_first_kind.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:31:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp: In instantiation of ‘boost::math::detail::upper_incomplete_gamma_fract<T>::result_type boost::math::detail::upper_incomplete_gamma_fract<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:311:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_a(Gen&, const U&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:403:68:   required from ‘T boost::math::detail::upper_gamma_fraction(T, T, T) [with T = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:1708:44:   required from ‘T boost::math::detail::gamma_incomplete_imp(T, T, bool, bool, const Policy&, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:2412:35:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::gamma_p(RT1, RT2, const Policy&) [with RT1 = double; RT2 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/gamma_p.hpp:76:30:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:388:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  388 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
In file included from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:260:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp: In instantiation of ‘std::pair<_FIter, _FIter> boost::math::detail::owens_t_T1_accelerated(T, T, const Policy&) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:886:46:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&, const std::integral_constant<int, 65>&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:991:36:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1012:38:   required from ‘RealType boost::math::detail::owens_t(RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1049:86:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2, const Policy&) [with T1 = double; T2 = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1055:24:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2) [with T1 = double; T2 = double; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:58:72:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:558:26: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  558 |          std::pair<T, T> owens_t_T1_accelerated(T h, T a, const Policy& pol)
      |                          ^~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/bessel_jy.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/math/special_functions/bessel.hpp:26,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/bessel_first_kind.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:31:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp: In instantiation of ‘boost::math::detail::upper_incomplete_gamma_fract<T>::result_type boost::math::detail::upper_incomplete_gamma_fract<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:311:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_a(Gen&, const U&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:403:68:   required from ‘T boost::math::detail::upper_gamma_fraction(T, T, T) [with T = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:1708:44:   required from ‘T boost::math::detail::gamma_incomplete_imp(T, T, bool, bool, const Policy&, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:2412:35:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::gamma_p(RT1, RT2, const Policy&) [with RT1 = double; RT2 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/gamma_p.hpp:76:30:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:388:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  388 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
In file included from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:260:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp: In instantiation of ‘std::pair<_FIter, _FIter> boost::math::detail::owens_t_T1_accelerated(T, T, const Policy&) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:886:46:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&, const std::integral_constant<int, 65>&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:991:36:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1012:38:   required from ‘RealType boost::math::detail::owens_t(RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1049:86:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2, const Policy&) [with T1 = double; T2 = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1055:24:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2) [with T1 = double; T2 = double; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:58:72:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:558:26: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  558 |          std::pair<T, T> owens_t_T1_accelerated(T h, T a, const Policy& pol)
      |                          ^~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/bessel_jy.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/math/special_functions/bessel.hpp:26,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/bessel_first_kind.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:31:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp: In instantiation of ‘boost::math::detail::upper_incomplete_gamma_fract<T>::result_type boost::math::detail::upper_incomplete_gamma_fract<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:311:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_a(Gen&, const U&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:403:68:   required from ‘T boost::math::detail::upper_gamma_fraction(T, T, T) [with T = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:1708:44:   required from ‘T boost::math::detail::gamma_incomplete_imp(T, T, bool, bool, const Policy&, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:2412:35:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::gamma_p(RT1, RT2, const Policy&) [with RT1 = double; RT2 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/gamma_p.hpp:76:30:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:388:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  388 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
In file included from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:260:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp: In instantiation of ‘std::pair<_FIter, _FIter> boost::math::detail::owens_t_T1_accelerated(T, T, const Policy&) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:886:46:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&, const std::integral_constant<int, 65>&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:991:36:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1012:38:   required from ‘RealType boost::math::detail::owens_t(RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1049:86:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2, const Policy&) [with T1 = double; T2 = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1055:24:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2) [with T1 = double; T2 = double; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:58:72:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:558:26: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  558 |          std::pair<T, T> owens_t_T1_accelerated(T h, T a, const Policy& pol)
      |                          ^~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/binomial.hpp:17,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/choose.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:46:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp: In instantiation of ‘boost::math::detail::ibeta_fraction2_t<T>::result_type boost::math::detail::ibeta_fraction2_t<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:134:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_b_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:172:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_b(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:860:54:   required from ‘T boost::math::detail::ibeta_fraction2(T, T, T, T, const Policy&, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1567:36:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1634:20:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1788:93:   required from ‘boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::ibeta(RT1, RT2, RT3, const Policy&) [with RT1 = double; RT2 = double; RT3 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2, A> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/inc_beta.hpp:29:28:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:823:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  823 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/binomial.hpp:17,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/choose.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:46:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp: In instantiation of ‘boost::math::detail::ibeta_fraction2_t<T>::result_type boost::math::detail::ibeta_fraction2_t<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:134:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_b_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:172:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_b(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:860:54:   required from ‘T boost::math::detail::ibeta_fraction2(T, T, T, T, const Policy&, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1567:36:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1634:20:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1788:93:   required from ‘boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::ibeta(RT1, RT2, RT3, const Policy&) [with RT1 = double; RT2 = double; RT3 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2, A> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/inc_beta.hpp:29:28:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:823:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  823 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/detail/bessel_jy.hpp:16,
                 from /home/ubuntu/R/library/BH/include/boost/math/special_functions/bessel.hpp:26,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/bessel_first_kind.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:31:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp: In instantiation of ‘boost::math::detail::upper_incomplete_gamma_fract<T>::result_type boost::math::detail::upper_incomplete_gamma_fract<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:311:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_a(Gen&, const U&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:403:68:   required from ‘T boost::math::detail::upper_gamma_fraction(T, T, T) [with T = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:1708:44:   required from ‘T boost::math::detail::gamma_incomplete_imp(T, T, bool, bool, const Policy&, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:2412:35:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::gamma_p(RT1, RT2, const Policy&) [with RT1 = double; RT2 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/gamma_p.hpp:76:30:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:388:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  388 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
In file included from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:6,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:260:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp: In instantiation of ‘std::pair<_FIter, _FIter> boost::math::detail::owens_t_T1_accelerated(T, T, const Policy&) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:886:46:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&, const std::integral_constant<int, 65>&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:991:36:   required from ‘RealType boost::math::detail::owens_t_dispatch(RealType, RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1012:38:   required from ‘RealType boost::math::detail::owens_t(RealType, RealType, const Policy&) [with RealType = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1049:86:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2, const Policy&) [with T1 = double; T2 = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:1055:24:   required from ‘boost::math::tools::promote_args_t<RT1, RT2> boost::math::owens_t(T1, T2) [with T1 = double; T2 = double; tools::promote_args_t<RT1, RT2> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/owens_t.hpp:58:72:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/owens_t.hpp:558:26: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  558 |          std::pair<T, T> owens_t_T1_accelerated(T h, T a, const Policy& pol)
      |                          ^~~~~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/binomial.hpp:17,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/choose.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:46:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp: In instantiation of ‘boost::math::detail::ibeta_fraction2_t<T>::result_type boost::math::detail::ibeta_fraction2_t<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:134:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_b_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:172:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_b(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:860:54:   required from ‘T boost::math::detail::ibeta_fraction2(T, T, T, T, const Policy&, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1567:36:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1634:20:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1788:93:   required from ‘boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::ibeta(RT1, RT2, RT3, const Policy&) [with RT1 = double; RT2 = double; RT3 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2, A> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/inc_beta.hpp:29:28:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:823:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  823 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:31:
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   required from ‘bool boost::range::equal(const SinglePassRange1&, const SinglePassRange2&) [with SinglePassRange1 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; SinglePassRange2 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/range/iterator_range_core.hpp:647:32:   required from ‘bool boost::operator==(const iterator_range<IteratorT>&, const iterator_range<Iterator2T>&) [with Iterator1T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; Iterator2T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_iterator.hpp:359:32:   required from ‘bool boost::algorithm::split_iterator<IteratorT>::equal(const boost::algorithm::split_iterator<IteratorT>&) const [with IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:518:24:   required from ‘static bool boost::iterators::iterator_core_access::equal(const Facade1&, const Facade2&, std::true_type) [with Facade1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; Facade2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; std::true_type = std::integral_constant<bool, true>]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:823:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator==(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC1 = forward_traversal_tag; Reference1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference1 = long int; Derived2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC2 = forward_traversal_tag; Reference2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_adaptor.hpp:166:27:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::IncrementableIteratorConcept<Iterator>::~IncrementableIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  138 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:31:
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   required from ‘bool boost::range::equal(const SinglePassRange1&, const SinglePassRange2&) [with SinglePassRange1 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; SinglePassRange2 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/range/iterator_range_core.hpp:647:32:   required from ‘bool boost::operator==(const iterator_range<IteratorT>&, const iterator_range<Iterator2T>&) [with Iterator1T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; Iterator2T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_iterator.hpp:359:32:   required from ‘bool boost::algorithm::split_iterator<IteratorT>::equal(const boost::algorithm::split_iterator<IteratorT>&) const [with IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:518:24:   required from ‘static bool boost::iterators::iterator_core_access::equal(const Facade1&, const Facade2&, std::true_type) [with Facade1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; Facade2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; std::true_type = std::integral_constant<bool, true>]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:823:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator==(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC1 = forward_traversal_tag; Reference1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference1 = long int; Derived2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC2 = forward_traversal_tag; Reference2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_adaptor.hpp:166:27:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::IncrementableIteratorConcept<Iterator>::~IncrementableIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  138 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/binomial.hpp:17,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/choose.hpp:7,
                 from /home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun.hpp:46:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp: In instantiation of ‘boost::math::detail::ibeta_fraction2_t<T>::result_type boost::math::detail::ibeta_fraction2_t<T>::operator()() [with T = double; result_type = std::pair<double, double>]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:134:20:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_b_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:172:44:   required from ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::continued_fraction_b(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::ibeta_fraction2_t<double>; U = double; typename detail::fraction_traits<Gen>::result_type = double; uintmax_t = long unsigned int]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:860:54:   required from ‘T boost::math::detail::ibeta_fraction2(T, T, T, T, const Policy&, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1567:36:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool, T*) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1634:20:   required from ‘T boost::math::detail::ibeta_imp(T, T, T, const Policy&, bool, bool) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::pole_error<boost::math::policies::errno_on_error>, boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:1788:93:   required from ‘boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::ibeta(RT1, RT2, RT3, const Policy&) [with RT1 = double; RT2 = double; RT3 = double; Policy = policies::policy<policies::overflow_error<boost::math::policies::errno_on_error>, policies::pole_error<boost::math::policies::errno_on_error>, policies::promote_double<false>, policies::digits2<0>, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT1, RT2, A> = double]’
/home/ubuntu/R/library/StanHeaders/include/stan/math/prim/fun/inc_beta.hpp:29:28:   required from here
/home/ubuntu/R/library/BH/include/boost/math/special_functions/beta.hpp:823:39: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  823 |    BOOST_MATH_GPU_ENABLED result_type operator()()
      |                                       ^~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:31:
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   required from ‘bool boost::range::equal(const SinglePassRange1&, const SinglePassRange2&) [with SinglePassRange1 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; SinglePassRange2 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/range/iterator_range_core.hpp:647:32:   required from ‘bool boost::operator==(const iterator_range<IteratorT>&, const iterator_range<Iterator2T>&) [with Iterator1T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; Iterator2T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_iterator.hpp:359:32:   required from ‘bool boost::algorithm::split_iterator<IteratorT>::equal(const boost::algorithm::split_iterator<IteratorT>&) const [with IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:518:24:   required from ‘static bool boost::iterators::iterator_core_access::equal(const Facade1&, const Facade2&, std::true_type) [with Facade1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; Facade2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; std::true_type = std::integral_constant<bool, true>]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:823:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator==(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC1 = forward_traversal_tag; Reference1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference1 = long int; Derived2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC2 = forward_traversal_tag; Reference2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_adaptor.hpp:166:27:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::IncrementableIteratorConcept<Iterator>::~IncrementableIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  138 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp: In function ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:44: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   61 |          std::pair<value_type, value_type> r = boost::math::detail::hypergeometric_pFq_checked_series_impl(aj, bj, value_type(z), pol, boost::math::detail::iteration_terminator(boost::math::policies::get_max_series_iterations<forwarding_policy>()), scale);
      |                                            ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
In file included from /home/ubuntu/R/library/BH/include/boost/concept_check.hpp:31:
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_concepts.hpp:106:7:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’:
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:154:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >)>’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:280:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   required from ‘struct boost::concepts::requirement_<void (*)(boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >)>’
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/range/algorithm/equal.hpp:174:13:   required from ‘bool boost::range::equal(const SinglePassRange1&, const SinglePassRange2&) [with SinglePassRange1 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; SinglePassRange2 = boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/range/iterator_range_core.hpp:647:32:   required from ‘bool boost::operator==(const iterator_range<IteratorT>&, const iterator_range<Iterator2T>&) [with Iterator1T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; Iterator2T = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/find_iterator.hpp:359:32:   required from ‘bool boost::algorithm::split_iterator<IteratorT>::equal(const boost::algorithm::split_iterator<IteratorT>&) const [with IteratorT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:518:24:   required from ‘static bool boost::iterators::iterator_core_access::equal(const Facade1&, const Facade2&, std::true_type) [with Facade1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; Facade2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; std::true_type = std::integral_constant<bool, true>]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:823:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator==(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC1 = forward_traversal_tag; Reference1 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference1 = long int; Derived2 = boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; V2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >; TC2 = forward_traversal_tag; Reference2 = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >&; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_adaptor.hpp:166:27:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47: warning: ‘this’ pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:19:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  259 |    value_type v = g();
      |               ^
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<long double>; U = long double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp: In function ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:44: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   61 |          std::pair<value_type, value_type> r = boost::math::detail::hypergeometric_pFq_checked_series_impl(aj, bj, value_type(z), pol, boost::math::detail::iteration_terminator(boost::math::policies::get_max_series_iterations<forwarding_policy>()), scale);
      |                                            ^
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:19:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  259 |    value_type v = g();
      |               ^
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<long double>; U = long double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5:   required from ‘struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:127:16:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13:   required from ‘struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::IncrementableIteratorConcept<Iterator>::~IncrementableIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:138:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  138 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5:   required from ‘struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:149:16:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]’
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5:   required from ‘struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13:   required from ‘struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:160:13: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  160 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp: In instantiation of ‘boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’:
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:50:47:   required from ‘static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >]’
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9:   required from ‘struct boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   required by substitution of ‘template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > >]’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from ‘const bool boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >::value’
/home/ubuntu/R/library/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from ‘struct boost::concepts::not_satisfied<boost::SinglePassRangeConcept<const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > > > >’
/home/ubuntu/R/library/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/ubuntu/R/library/BH/include/boost/iterator/iterator_facade.hpp:824:1:   required from ‘typename boost::iterators::detail::enable_if_interoperable<Derived1, Derived2, boost::iterators::detail::always_bool_t<Derived1, Derived2> >::type boost::iterators::operator!=(const iterator_facade<Derived1, V1, TC1, Reference1, Difference1>&, const iterator_facade<Derived2, V2, TC2, Reference2, Difference2>&) [with Derived1 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V1 = std::__cxx11::basic_string<char>; TC1 = forward_traversal_tag; Reference1 = std::__cxx11::basic_string<char>; Difference1 = long int; Derived2 = transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; V2 = std::__cxx11::basic_string<char>; TC2 = forward_traversal_tag; Reference2 = std::__cxx11::basic_string<char>; Difference2 = long int; typename detail::enable_if_interoperable<Derived1, Derived2, detail::always_bool_t<Derived1, Derived2> >::type = bool; detail::always_bool_t<Derived1, Derived2> = bool]’
/usr/include/c++/13/bits/stl_vector.h:1671:21:   required from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >]’
/usr/include/c++/13/bits/stl_vector.h:711:23:   required from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = boost::iterators::transform_iterator<boost::algorithm::detail::copy_iterator_rangeF<std::__cxx11::basic_string<char>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::algorithm::split_iterator<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >, boost::use_default, boost::use_default>; <template-parameter-2-2> = void; _Tp = std::__cxx11::basic_string<char>; _Alloc = std::allocator<std::__cxx11::basic_string<char> >; allocator_type = std::allocator<std::__cxx11::basic_string<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/iter_find.hpp:186:31:   required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; FinderT = detail::token_finderF<detail::is_any_ofF<char> >]’
/home/ubuntu/R/library/BH/include/boost/algorithm/string/split.hpp:158:50:   required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, token_compress_mode_type) [with SequenceSequenceT = std::vector<std::__cxx11::basic_string<char> >; RangeT = std::__cxx11::basic_string<char>&; PredicateT = detail::is_any_ofF<char>]’
/home/ubuntu/R/library/StanHeaders/include/src/stan/io/stan_csv_reader.hpp:19:17:   required from here
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:20:48: warning: ‘this’ pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/home/ubuntu/R/library/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function ‘boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = const boost::iterator_range<__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> > >]’
   37 |       ~model()
      |       ^
/home/ubuntu/R/library/BH/include/boost/range/concepts.hpp:286:9: note: in expansion of macro ‘BOOST_CONCEPT_USAGE’
  286 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp: In function ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:44: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   61 |          std::pair<value_type, value_type> r = boost::math::detail::hypergeometric_pFq_checked_series_impl(aj, bj, value_type(z), pol, boost::math::detail::iteration_terminator(boost::math::policies::get_max_series_iterations<forwarding_policy>()), scale);
      |                                            ^
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:19:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  259 |    value_type v = g();
      |               ^
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<long double>; U = long double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp: In function ‘typename boost::math::tools::promote_args<Real, typename Seq::value_type>::type boost::math::hypergeometric_pFq(const Seq&, const Seq&, const Real&, Real*, const Policy&) [with Seq = std::vector<double>; Real = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>]’:
/home/ubuntu/R/library/BH/include/boost/math/special_functions/hypergeometric_pFq.hpp:61:44: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
   61 |          std::pair<value_type, value_type> r = boost::math::detail::hypergeometric_pFq_checked_series_impl(aj, bj, value_type(z), pol, boost::math::detail::iteration_terminator(boost::math::policies::get_max_series_iterations<forwarding_policy>()), scale);
      |                                            ^
In file included from /home/ubuntu/R/library/BH/include/boost/math/special_functions/gamma.hpp:19:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<double>; U = double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
  259 |    value_type v = g();
      |               ^
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp: In function ‘typename boost::math::tools::detail::fraction_traits<Gen>::result_type boost::math::tools::detail::continued_fraction_a_impl(Gen&, const U&, uintmax_t&) [with Gen = boost::math::detail::upper_incomplete_gamma_fract<long double>; U = long double]’:
/home/ubuntu/R/library/BH/include/boost/math/tools/fraction.hpp:259:15: note: parameter passing for argument of type ‘std::pair<long double, long double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
