sbuild (Debian sbuild) 0.86.3~bpo12+1 (03 November 2024) on debusine-worker-arm64-demeter-08.freexian.com
+==============================================================================+
| sparsehash 2.0.3-2 (arm64) Mon, 18 Nov 2024 15:27:44 +0000 |
+==============================================================================+
Package: sparsehash
Version: 2.0.3-2
Source Version: 2.0.3-2
Distribution: sid
Machine Architecture: arm64
Host Architecture: arm64
Build Architecture: arm64
Build Type: binary
I: No tarballs found in /var/lib/debusine/worker/.cache/sbuild
Unpacking /var/lib/debusine/worker/system-images/957781/system.tar.xz to /tmp/tmp.sbuild.nvNeYGy4DQ...
I: NOTICE: Log filtering will replace 'sbuild-unshare-dummy-location' with '<<CHROOT>>'
+------------------------------------------------------------------------------+
| Chroot Setup Commands |
+------------------------------------------------------------------------------+
rm -f /etc/resolv.conf
----------------------
I: Finished running 'rm -f /etc/resolv.conf'.
Finished processing commands.
--------------------------------------------------------------------------------
Copying /tmp/debusine-fetch-exec-upload-3ay14won/dpkg-dbgsym_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-3ay14won/dpkg_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-3ay14won/dselect-dbgsym_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-3ay14won/dselect_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-3ay14won/libdpkg-dev_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-3ay14won/dpkg-dev_1.22.12~1.gbp82cafd_all.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-3ay14won/libdpkg-perl_1.22.12~1.gbp82cafd_all.deb to /<<CHROOT>>...
I: NOTICE: Log filtering will replace 'build/sparsehash-iWpWNv/resolver-9WZynt' with '<<RESOLVERDIR>>'
+------------------------------------------------------------------------------+
| Update chroot |
+------------------------------------------------------------------------------+
Get:1 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ InRelease
Ign:1 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ InRelease
Get:2 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ Release [606 B]
Get:2 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ Release [606 B]
Get:3 http://deb.debian.org/debian sid InRelease [202 kB]
Get:4 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ Release.gpg
Ign:4 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ Release.gpg
Get:5 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ Packages [9246 B]
Get:6 http://deb.debian.org/debian sid/main arm64 Packages [9956 kB]
Get:7 http://deb.debian.org/debian sid/main arm64 Components [4906 kB]
Fetched 15.1 MB in 2s (6166 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
The following packages will be upgraded:
apt bsdextrautils bsdutils debianutils diffstat dpkg dpkg-dev
libapt-pkg6.0t64 libaudit-common libaudit1 libblkid1 libbrotli1 libcap-ng0
libdpkg-perl libglib2.0-0t64 libmarkdown2 libmount1 libpcre2-8-0 libseccomp2
libselinux1 libsemanage2 libsmartcols1 libsystemd0 libudev1 libuuid1 libxml2
login login.defs mount passwd util-linux
31 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 9307 kB/12.8 MB of archives.
After this operation, 603 kB disk space will be freed.
Get:1 http://deb.debian.org/debian sid/main arm64 bsdutils arm64 1:2.40.2-11 [104 kB]
Get:2 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ dpkg 1.22.12~1.gbp82cafd [1513 kB]
Get:3 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ dpkg-dev 1.22.12~1.gbp82cafd [1337 kB]
Get:4 http://deb.debian.org/debian sid/main arm64 debianutils arm64 5.21 [92.1 kB]
Get:5 http://deb.debian.org/debian sid/main arm64 libsystemd0 arm64 257~rc2-3 [416 kB]
Get:6 file:/build/sparsehash-iWpWNv/resolver-bDIphT/apt_archive ./ libdpkg-perl 1.22.12~1.gbp82cafd [647 kB]
Get:7 http://deb.debian.org/debian sid/main arm64 libudev1 arm64 257~rc2-3 [139 kB]
Get:8 http://deb.debian.org/debian sid/main arm64 libapt-pkg6.0t64 arm64 2.9.11 [921 kB]
Get:9 http://deb.debian.org/debian sid/main arm64 bsdextrautils arm64 2.40.2-11 [91.2 kB]
Get:10 http://deb.debian.org/debian sid/main arm64 libblkid1 arm64 2.40.2-11 [162 kB]
Get:11 http://deb.debian.org/debian sid/main arm64 libmount1 arm64 2.40.2-11 [190 kB]
Get:12 http://deb.debian.org/debian sid/main arm64 libsmartcols1 arm64 2.40.2-11 [135 kB]
Get:13 http://deb.debian.org/debian sid/main arm64 mount arm64 2.40.2-11 [153 kB]
Get:14 http://deb.debian.org/debian sid/main arm64 libuuid1 arm64 2.40.2-11 [35.7 kB]
Get:15 http://deb.debian.org/debian sid/main arm64 util-linux arm64 2.40.2-11 [1170 kB]
Get:16 http://deb.debian.org/debian sid/main arm64 libpcre2-8-0 arm64 10.44-4 [243 kB]
Get:17 http://deb.debian.org/debian sid/main arm64 libselinux1 arm64 3.7-3+b1 [72.1 kB]
Get:18 http://deb.debian.org/debian sid/main arm64 libseccomp2 arm64 2.5.5-1+b3 [46.8 kB]
Get:19 http://deb.debian.org/debian sid/main arm64 apt arm64 2.9.11 [1287 kB]
Get:20 http://deb.debian.org/debian sid/main arm64 libaudit-common all 1:4.0.2-2 [12.7 kB]
Get:21 http://deb.debian.org/debian sid/main arm64 libcap-ng0 arm64 0.8.5-3+b1 [17.0 kB]
Get:22 http://deb.debian.org/debian sid/main arm64 libaudit1 arm64 1:4.0.2-2 [54.2 kB]
Get:23 http://deb.debian.org/debian sid/main arm64 login arm64 1:4.16.0-2+really2.40.2-11 [80.0 kB]
Get:24 http://deb.debian.org/debian sid/main arm64 login.defs all 1:4.16.0-5 [185 kB]
Get:25 http://deb.debian.org/debian sid/main arm64 libsemanage2 arm64 3.7-2+b1 [84.5 kB]
Get:26 http://deb.debian.org/debian sid/main arm64 passwd arm64 1:4.16.0-5 [1210 kB]
Get:27 http://deb.debian.org/debian sid/main arm64 diffstat arm64 1.67-1 [32.6 kB]
Get:28 http://deb.debian.org/debian sid/main arm64 libbrotli1 arm64 1.1.0-2+b6 [297 kB]
Get:29 http://deb.debian.org/debian sid/main arm64 libglib2.0-0t64 arm64 2.82.2-3 [1411 kB]
Get:30 http://deb.debian.org/debian sid/main arm64 libmarkdown2 arm64 2.2.7-2.1 [33.1 kB]
Get:31 http://deb.debian.org/debian sid/main arm64 libxml2 arm64 2.12.7+dfsg+really2.9.14-0.2+b1 [630 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 9307 kB in 0s (65.1 MB/s)
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17129 files and directories currently installed.)
Preparing to unpack .../bsdutils_1%3a2.40.2-11_arm64.deb ...
Unpacking bsdutils (1:2.40.2-11) over (1:2.40.2-10) ...
Setting up bsdutils (1:2.40.2-11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17129 files and directories currently installed.)
Preparing to unpack .../debianutils_5.21_arm64.deb ...
Unpacking debianutils (5.21) over (5.20+b1) ...
Setting up debianutils (5.21) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17128 files and directories currently installed.)
Preparing to unpack .../libsystemd0_257~rc2-3_arm64.deb ...
Unpacking libsystemd0:arm64 (257~rc2-3) over (257~rc1-4) ...
Setting up libsystemd0:arm64 (257~rc2-3) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17128 files and directories currently installed.)
Preparing to unpack .../libudev1_257~rc2-3_arm64.deb ...
Unpacking libudev1:arm64 (257~rc2-3) over (257~rc1-4) ...
Setting up libudev1:arm64 (257~rc2-3) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17128 files and directories currently installed.)
Preparing to unpack .../libapt-pkg6.0t64_2.9.11_arm64.deb ...
Unpacking libapt-pkg6.0t64:arm64 (2.9.11) over (2.9.10) ...
Setting up libapt-pkg6.0t64:arm64 (2.9.11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17128 files and directories currently installed.)
Preparing to unpack .../dpkg_1.22.12~1.gbp82cafd_arm64.deb ...
Unpacking dpkg (1.22.12~1.gbp82cafd) over (1.22.11) ...
Setting up dpkg (1.22.12~1.gbp82cafd) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17127 files and directories currently installed.)
Preparing to unpack .../bsdextrautils_2.40.2-11_arm64.deb ...
Unpacking bsdextrautils (2.40.2-11) over (2.40.2-10) ...
Preparing to unpack .../libblkid1_2.40.2-11_arm64.deb ...
Unpacking libblkid1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libblkid1:arm64 (2.40.2-11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17123 files and directories currently installed.)
Preparing to unpack .../libmount1_2.40.2-11_arm64.deb ...
Unpacking libmount1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libmount1:arm64 (2.40.2-11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17123 files and directories currently installed.)
Preparing to unpack .../libsmartcols1_2.40.2-11_arm64.deb ...
Unpacking libsmartcols1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libsmartcols1:arm64 (2.40.2-11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17123 files and directories currently installed.)
Preparing to unpack .../mount_2.40.2-11_arm64.deb ...
Unpacking mount (2.40.2-11) over (2.40.2-10) ...
Preparing to unpack .../libuuid1_2.40.2-11_arm64.deb ...
Unpacking libuuid1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libuuid1:arm64 (2.40.2-11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17123 files and directories currently installed.)
Preparing to unpack .../util-linux_2.40.2-11_arm64.deb ...
Unpacking util-linux (2.40.2-11) over (2.40.2-10) ...
Setting up util-linux (2.40.2-11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17120 files and directories currently installed.)
Preparing to unpack .../libpcre2-8-0_10.44-4_arm64.deb ...
Unpacking libpcre2-8-0:arm64 (10.44-4) over (10.42-4+b2) ...
Setting up libpcre2-8-0:arm64 (10.44-4) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17119 files and directories currently installed.)
Preparing to unpack .../libselinux1_3.7-3+b1_arm64.deb ...
Unpacking libselinux1:arm64 (3.7-3+b1) over (3.7-3) ...
Setting up libselinux1:arm64 (3.7-3+b1) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17120 files and directories currently installed.)
Preparing to unpack .../libseccomp2_2.5.5-1+b3_arm64.deb ...
Unpacking libseccomp2:arm64 (2.5.5-1+b3) over (2.5.5-1+b2) ...
Setting up libseccomp2:arm64 (2.5.5-1+b3) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17120 files and directories currently installed.)
Preparing to unpack .../archives/apt_2.9.11_arm64.deb ...
Unpacking apt (2.9.11) over (2.9.10) ...
Setting up apt (2.9.11) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17117 files and directories currently installed.)
Preparing to unpack .../libaudit-common_1%3a4.0.2-2_all.deb ...
Unpacking libaudit-common (1:4.0.2-2) over (1:4.0.1-3) ...
Setting up libaudit-common (1:4.0.2-2) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17117 files and directories currently installed.)
Preparing to unpack .../libcap-ng0_0.8.5-3+b1_arm64.deb ...
Unpacking libcap-ng0:arm64 (0.8.5-3+b1) over (0.8.5-3) ...
Setting up libcap-ng0:arm64 (0.8.5-3+b1) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17118 files and directories currently installed.)
Preparing to unpack .../libaudit1_1%3a4.0.2-2_arm64.deb ...
Unpacking libaudit1:arm64 (1:4.0.2-2) over (1:4.0.1-3) ...
Setting up libaudit1:arm64 (1:4.0.2-2) ...
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 17118 files and directories currently installed.)
Preparing to unpack .../00-login_1%3a4.16.0-2+really2.40.2-11_arm64.deb ...
Unpacking login (1:4.16.0-2+really2.40.2-11) over (1:4.16.0-2+really2.40.2-10) ...
Preparing to unpack .../01-login.defs_1%3a4.16.0-5_all.deb ...
Unpacking login.defs (1:4.16.0-5) over (1:4.16.0-4) ...
Preparing to unpack .../02-libsemanage2_3.7-2+b1_arm64.deb ...
Unpacking libsemanage2:arm64 (3.7-2+b1) over (3.7-2) ...
Preparing to unpack .../03-passwd_1%3a4.16.0-5_arm64.deb ...
Unpacking passwd (1:4.16.0-5) over (1:4.16.0-4) ...
Preparing to unpack .../04-diffstat_1.67-1_arm64.deb ...
Unpacking diffstat (1.67-1) over (1.66-1+b1) ...
Preparing to unpack .../05-dpkg-dev_1.22.12~1.gbp82cafd_all.deb ...
Unpacking dpkg-dev (1.22.12~1.gbp82cafd) over (1.22.11) ...
Preparing to unpack .../06-libdpkg-perl_1.22.12~1.gbp82cafd_all.deb ...
Unpacking libdpkg-perl (1.22.12~1.gbp82cafd) over (1.22.11) ...
Preparing to unpack .../07-libbrotli1_1.1.0-2+b6_arm64.deb ...
Unpacking libbrotli1:arm64 (1.1.0-2+b6) over (1.1.0-2+b5) ...
Preparing to unpack .../08-libglib2.0-0t64_2.82.2-3_arm64.deb ...
Unpacking libglib2.0-0t64:arm64 (2.82.2-3) over (2.82.2-2) ...
Preparing to unpack .../09-libmarkdown2_2.2.7-2.1_arm64.deb ...
Unpacking libmarkdown2:arm64 (2.2.7-2.1) over (2.2.7-2+b1) ...
Preparing to unpack .../10-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_arm64.deb ...
Unpacking libxml2:arm64 (2.12.7+dfsg+really2.9.14-0.2+b1) over (2.12.7+dfsg+really2.9.14-0.1) ...
Setting up bsdextrautils (2.40.2-11) ...
Setting up login.defs (1:4.16.0-5) ...
Installing new version of config file /etc/login.defs ...
Setting up libbrotli1:arm64 (1.1.0-2+b6) ...
Setting up libglib2.0-0t64:arm64 (2.82.2-3) ...
No schema files found: doing nothing.
Setting up diffstat (1.67-1) ...
Setting up libdpkg-perl (1.22.12~1.gbp82cafd) ...
Setting up mount (2.40.2-11) ...
Setting up libsemanage2:arm64 (3.7-2+b1) ...
Setting up libxml2:arm64 (2.12.7+dfsg+really2.9.14-0.2+b1) ...
Setting up libmarkdown2:arm64 (2.2.7-2.1) ...
Setting up login (1:4.16.0-2+really2.40.2-11) ...
Setting up dpkg-dev (1.22.12~1.gbp82cafd) ...
Setting up passwd (1:4.16.0-5) ...
Processing triggers for man-db (2.13.0-1) ...
Processing triggers for libc-bin (2.40-3) ...
+------------------------------------------------------------------------------+
| Fetch source files |
+------------------------------------------------------------------------------+
Local sources
-------------
/tmp/debusine-fetch-exec-upload-3ay14won/sparsehash_2.0.3-2.dsc exists in /tmp/debusine-fetch-exec-upload-3ay14won; copying to chroot
I: NOTICE: Log filtering will replace 'build/sparsehash-iWpWNv/sparsehash-2.0.3' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/sparsehash-iWpWNv' with '<<BUILDDIR>>'
+------------------------------------------------------------------------------+
| Install package build dependencies |
+------------------------------------------------------------------------------+
Setup apt archive
-----------------
Merged Build-Depends: debhelper (>= 10), build-essential, fakeroot
Filtered Build-Depends: debhelper (>= 10), build-essential, fakeroot
dpkg-deb: warning: root directory has unusual owner or group 998:999.
Hint: either pass --root-owner-group, see dpkg-build-api(7) or add an explicit 'Rules-Requires-Root: no' in debian/control.
dpkg-deb: warning: ignoring 1 warning about the control file(s)
dpkg-deb: building package 'sbuild-build-depends-main-dummy' in '/<<RESOLVERDIR>>/apt_archive/sbuild-build-depends-main-dummy.deb'.
Ign:1 copy:/<<RESOLVERDIR>>/apt_archive ./ InRelease
Get:2 copy:/<<RESOLVERDIR>>/apt_archive ./ Release [609 B]
Ign:3 copy:/<<RESOLVERDIR>>/apt_archive ./ Release.gpg
Get:4 copy:/<<RESOLVERDIR>>/apt_archive ./ Sources [611 B]
Get:5 copy:/<<RESOLVERDIR>>/apt_archive ./ Packages [643 B]
Fetched 1863 B in 0s (163 kB/s)
Reading package lists...
Get:1 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ InRelease
Ign:1 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ InRelease
Get:2 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release [606 B]
Get:2 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release [606 B]
Get:3 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release.gpg
Ign:3 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release.gpg
Reading package lists...
Reading package lists...
Install main build dependencies (apt-based resolver)
----------------------------------------------------
Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
autoconf automake autopoint autotools-dev build-essential cpp cpp-14
cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper dh-autoreconf
dh-strip-nondeterminism dwz fakeroot g++ g++-14 g++-14-aarch64-linux-gnu
g++-aarch64-linux-gnu gcc gcc-14 gcc-14-aarch64-linux-gnu
gcc-aarch64-linux-gnu libasan8 libc-dev-bin libc6-dev libcc1-0 libcrypt-dev
libdebhelper-perl libelf1t64 libfakeroot libfile-stripnondeterminism-perl
libgcc-14-dev libhwasan0 libisl23 libitm1 liblsan0 libmpc3 libmpfr6
libstdc++-14-dev libtool libtsan2 libubsan1 linux-libc-dev m4 po-debconf
rpcsvc-proto
Suggested packages:
autoconf-archive gnu-standards autoconf-doc cpp-doc gcc-14-locales
cpp-14-doc dh-make gcc-14-doc gcc-multilib manpages-dev flex bison gdb
gcc-doc gdb-aarch64-linux-gnu libc-devtools glibc-doc libstdc++-14-doc
libtool-doc gfortran | fortran95-compiler gcj-jdk m4-doc libmail-box-perl
Recommended packages:
manpages manpages-dev libarchive-cpio-perl libltdl-dev libmail-sendmail-perl
The following NEW packages will be installed:
autoconf automake autopoint autotools-dev build-essential cpp cpp-14
cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper dh-autoreconf
dh-strip-nondeterminism dwz fakeroot g++ g++-14 g++-14-aarch64-linux-gnu
g++-aarch64-linux-gnu gcc gcc-14 gcc-14-aarch64-linux-gnu
gcc-aarch64-linux-gnu libasan8 libc-dev-bin libc6-dev libcc1-0 libcrypt-dev
libdebhelper-perl libelf1t64 libfakeroot libfile-stripnondeterminism-perl
libgcc-14-dev libhwasan0 libisl23 libitm1 liblsan0 libmpc3 libmpfr6
libstdc++-14-dev libtool libtsan2 libubsan1 linux-libc-dev m4 po-debconf
rpcsvc-proto sbuild-build-depends-main-dummy
0 upgraded, 47 newly installed, 0 to remove and 0 not upgraded.
Need to get 61.0 MB of archives.
After this operation, 238 MB of additional disk space will be used.
Get:1 copy:/<<RESOLVERDIR>>/apt_archive ./ sbuild-build-depends-main-dummy 0.invalid.0 [880 B]
Get:2 http://deb.debian.org/debian sid/main arm64 m4 arm64 1.4.19-4 [277 kB]
Get:3 http://deb.debian.org/debian sid/main arm64 autoconf all 2.72-3 [493 kB]
Get:4 http://deb.debian.org/debian sid/main arm64 autotools-dev all 20220109.1 [51.6 kB]
Get:5 http://deb.debian.org/debian sid/main arm64 automake all 1:1.16.5-1.3 [823 kB]
Get:6 http://deb.debian.org/debian sid/main arm64 autopoint all 0.22.5-2 [723 kB]
Get:7 http://deb.debian.org/debian sid/main arm64 libc-dev-bin arm64 2.40-3 [50.9 kB]
Get:8 http://deb.debian.org/debian sid/main arm64 linux-libc-dev all 6.11.9-1 [2459 kB]
Get:9 http://deb.debian.org/debian sid/main arm64 libcrypt-dev arm64 1:4.4.36-5 [122 kB]
Get:10 http://deb.debian.org/debian sid/main arm64 rpcsvc-proto arm64 1.4.3-1+b1 [60.5 kB]
Get:11 http://deb.debian.org/debian sid/main arm64 libc6-dev arm64 2.40-3 [1591 kB]
Get:12 http://deb.debian.org/debian sid/main arm64 libisl23 arm64 0.27-1 [601 kB]
Get:13 http://deb.debian.org/debian sid/main arm64 libmpfr6 arm64 4.2.1-1+b2 [680 kB]
Get:14 http://deb.debian.org/debian sid/main arm64 libmpc3 arm64 1.3.1-1+b3 [50.5 kB]
Get:15 http://deb.debian.org/debian sid/main arm64 cpp-14-aarch64-linux-gnu arm64 14.2.0-8 [9166 kB]
Get:16 http://deb.debian.org/debian sid/main arm64 cpp-14 arm64 14.2.0-8 [1284 B]
Get:17 http://deb.debian.org/debian sid/main arm64 cpp-aarch64-linux-gnu arm64 4:14.2.0-1 [4832 B]
Get:18 http://deb.debian.org/debian sid/main arm64 cpp arm64 4:14.2.0-1 [1568 B]
Get:19 http://deb.debian.org/debian sid/main arm64 libcc1-0 arm64 14.2.0-8 [42.2 kB]
Get:20 http://deb.debian.org/debian sid/main arm64 libitm1 arm64 14.2.0-8 [24.2 kB]
Get:21 http://deb.debian.org/debian sid/main arm64 libasan8 arm64 14.2.0-8 [2579 kB]
Get:22 http://deb.debian.org/debian sid/main arm64 liblsan0 arm64 14.2.0-8 [1161 kB]
Get:23 http://deb.debian.org/debian sid/main arm64 libtsan2 arm64 14.2.0-8 [2386 kB]
Get:24 http://deb.debian.org/debian sid/main arm64 libubsan1 arm64 14.2.0-8 [1039 kB]
Get:25 http://deb.debian.org/debian sid/main arm64 libhwasan0 arm64 14.2.0-8 [1442 kB]
Get:26 http://deb.debian.org/debian sid/main arm64 libgcc-14-dev arm64 14.2.0-8 [2365 kB]
Get:27 http://deb.debian.org/debian sid/main arm64 gcc-14-aarch64-linux-gnu arm64 14.2.0-8 [17.7 MB]
Get:28 http://deb.debian.org/debian sid/main arm64 gcc-14 arm64 14.2.0-8 [519 kB]
Get:29 http://deb.debian.org/debian sid/main arm64 gcc-aarch64-linux-gnu arm64 4:14.2.0-1 [1440 B]
Get:30 http://deb.debian.org/debian sid/main arm64 gcc arm64 4:14.2.0-1 [5136 B]
Get:31 http://deb.debian.org/debian sid/main arm64 libstdc++-14-dev arm64 14.2.0-8 [2267 kB]
Get:32 http://deb.debian.org/debian sid/main arm64 g++-14-aarch64-linux-gnu arm64 14.2.0-8 [10.1 MB]
Get:33 http://deb.debian.org/debian sid/main arm64 g++-14 arm64 14.2.0-8 [20.2 kB]
Get:34 http://deb.debian.org/debian sid/main arm64 g++-aarch64-linux-gnu arm64 4:14.2.0-1 [1200 B]
Get:35 http://deb.debian.org/debian sid/main arm64 g++ arm64 4:14.2.0-1 [1332 B]
Get:36 http://deb.debian.org/debian sid/main arm64 build-essential arm64 12.12 [4624 B]
Get:37 http://deb.debian.org/debian sid/main arm64 libdebhelper-perl all 13.20 [89.7 kB]
Get:38 http://deb.debian.org/debian sid/main arm64 libtool all 2.4.7-8 [517 kB]
Get:39 http://deb.debian.org/debian sid/main arm64 dh-autoreconf all 20 [17.1 kB]
Get:40 http://deb.debian.org/debian sid/main arm64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB]
Get:41 http://deb.debian.org/debian sid/main arm64 dh-strip-nondeterminism all 1.14.0-1 [8448 B]
Get:42 http://deb.debian.org/debian sid/main arm64 libelf1t64 arm64 0.192-4 [189 kB]
Get:43 http://deb.debian.org/debian sid/main arm64 dwz arm64 0.15-1+b1 [102 kB]
Get:44 http://deb.debian.org/debian sid/main arm64 po-debconf all 1.0.21+nmu1 [248 kB]
Get:45 http://deb.debian.org/debian sid/main arm64 debhelper all 13.20 [915 kB]
Get:46 http://deb.debian.org/debian sid/main arm64 libfakeroot arm64 1.36-1 [29.1 kB]
Get:47 http://deb.debian.org/debian sid/main arm64 fakeroot arm64 1.36-1 [74.4 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 61.0 MB in 1s (102 MB/s)
Selecting previously unselected package m4.
(Reading database ... 17118 files and directories currently installed.)
Preparing to unpack .../00-m4_1.4.19-4_arm64.deb ...
Unpacking m4 (1.4.19-4) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../01-autoconf_2.72-3_all.deb ...
Unpacking autoconf (2.72-3) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../02-autotools-dev_20220109.1_all.deb ...
Unpacking autotools-dev (20220109.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../03-automake_1%3a1.16.5-1.3_all.deb ...
Unpacking automake (1:1.16.5-1.3) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../04-autopoint_0.22.5-2_all.deb ...
Unpacking autopoint (0.22.5-2) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../05-libc-dev-bin_2.40-3_arm64.deb ...
Unpacking libc-dev-bin (2.40-3) ...
Selecting previously unselected package linux-libc-dev.
Preparing to unpack .../06-linux-libc-dev_6.11.9-1_all.deb ...
Unpacking linux-libc-dev (6.11.9-1) ...
Selecting previously unselected package libcrypt-dev:arm64.
Preparing to unpack .../07-libcrypt-dev_1%3a4.4.36-5_arm64.deb ...
Unpacking libcrypt-dev:arm64 (1:4.4.36-5) ...
Selecting previously unselected package rpcsvc-proto.
Preparing to unpack .../08-rpcsvc-proto_1.4.3-1+b1_arm64.deb ...
Unpacking rpcsvc-proto (1.4.3-1+b1) ...
Selecting previously unselected package libc6-dev:arm64.
Preparing to unpack .../09-libc6-dev_2.40-3_arm64.deb ...
Unpacking libc6-dev:arm64 (2.40-3) ...
Selecting previously unselected package libisl23:arm64.
Preparing to unpack .../10-libisl23_0.27-1_arm64.deb ...
Unpacking libisl23:arm64 (0.27-1) ...
Selecting previously unselected package libmpfr6:arm64.
Preparing to unpack .../11-libmpfr6_4.2.1-1+b2_arm64.deb ...
Unpacking libmpfr6:arm64 (4.2.1-1+b2) ...
Selecting previously unselected package libmpc3:arm64.
Preparing to unpack .../12-libmpc3_1.3.1-1+b3_arm64.deb ...
Unpacking libmpc3:arm64 (1.3.1-1+b3) ...
Selecting previously unselected package cpp-14-aarch64-linux-gnu.
Preparing to unpack .../13-cpp-14-aarch64-linux-gnu_14.2.0-8_arm64.deb ...
Unpacking cpp-14-aarch64-linux-gnu (14.2.0-8) ...
Selecting previously unselected package cpp-14.
Preparing to unpack .../14-cpp-14_14.2.0-8_arm64.deb ...
Unpacking cpp-14 (14.2.0-8) ...
Selecting previously unselected package cpp-aarch64-linux-gnu.
Preparing to unpack .../15-cpp-aarch64-linux-gnu_4%3a14.2.0-1_arm64.deb ...
Unpacking cpp-aarch64-linux-gnu (4:14.2.0-1) ...
Selecting previously unselected package cpp.
Preparing to unpack .../16-cpp_4%3a14.2.0-1_arm64.deb ...
Unpacking cpp (4:14.2.0-1) ...
Selecting previously unselected package libcc1-0:arm64.
Preparing to unpack .../17-libcc1-0_14.2.0-8_arm64.deb ...
Unpacking libcc1-0:arm64 (14.2.0-8) ...
Selecting previously unselected package libitm1:arm64.
Preparing to unpack .../18-libitm1_14.2.0-8_arm64.deb ...
Unpacking libitm1:arm64 (14.2.0-8) ...
Selecting previously unselected package libasan8:arm64.
Preparing to unpack .../19-libasan8_14.2.0-8_arm64.deb ...
Unpacking libasan8:arm64 (14.2.0-8) ...
Selecting previously unselected package liblsan0:arm64.
Preparing to unpack .../20-liblsan0_14.2.0-8_arm64.deb ...
Unpacking liblsan0:arm64 (14.2.0-8) ...
Selecting previously unselected package libtsan2:arm64.
Preparing to unpack .../21-libtsan2_14.2.0-8_arm64.deb ...
Unpacking libtsan2:arm64 (14.2.0-8) ...
Selecting previously unselected package libubsan1:arm64.
Preparing to unpack .../22-libubsan1_14.2.0-8_arm64.deb ...
Unpacking libubsan1:arm64 (14.2.0-8) ...
Selecting previously unselected package libhwasan0:arm64.
Preparing to unpack .../23-libhwasan0_14.2.0-8_arm64.deb ...
Unpacking libhwasan0:arm64 (14.2.0-8) ...
Selecting previously unselected package libgcc-14-dev:arm64.
Preparing to unpack .../24-libgcc-14-dev_14.2.0-8_arm64.deb ...
Unpacking libgcc-14-dev:arm64 (14.2.0-8) ...
Selecting previously unselected package gcc-14-aarch64-linux-gnu.
Preparing to unpack .../25-gcc-14-aarch64-linux-gnu_14.2.0-8_arm64.deb ...
Unpacking gcc-14-aarch64-linux-gnu (14.2.0-8) ...
Selecting previously unselected package gcc-14.
Preparing to unpack .../26-gcc-14_14.2.0-8_arm64.deb ...
Unpacking gcc-14 (14.2.0-8) ...
Selecting previously unselected package gcc-aarch64-linux-gnu.
Preparing to unpack .../27-gcc-aarch64-linux-gnu_4%3a14.2.0-1_arm64.deb ...
Unpacking gcc-aarch64-linux-gnu (4:14.2.0-1) ...
Selecting previously unselected package gcc.
Preparing to unpack .../28-gcc_4%3a14.2.0-1_arm64.deb ...
Unpacking gcc (4:14.2.0-1) ...
Selecting previously unselected package libstdc++-14-dev:arm64.
Preparing to unpack .../29-libstdc++-14-dev_14.2.0-8_arm64.deb ...
Unpacking libstdc++-14-dev:arm64 (14.2.0-8) ...
Selecting previously unselected package g++-14-aarch64-linux-gnu.
Preparing to unpack .../30-g++-14-aarch64-linux-gnu_14.2.0-8_arm64.deb ...
Unpacking g++-14-aarch64-linux-gnu (14.2.0-8) ...
Selecting previously unselected package g++-14.
Preparing to unpack .../31-g++-14_14.2.0-8_arm64.deb ...
Unpacking g++-14 (14.2.0-8) ...
Selecting previously unselected package g++-aarch64-linux-gnu.
Preparing to unpack .../32-g++-aarch64-linux-gnu_4%3a14.2.0-1_arm64.deb ...
Unpacking g++-aarch64-linux-gnu (4:14.2.0-1) ...
Selecting previously unselected package g++.
Preparing to unpack .../33-g++_4%3a14.2.0-1_arm64.deb ...
Unpacking g++ (4:14.2.0-1) ...
Selecting previously unselected package build-essential.
Preparing to unpack .../34-build-essential_12.12_arm64.deb ...
Unpacking build-essential (12.12) ...
Selecting previously unselected package libdebhelper-perl.
Preparing to unpack .../35-libdebhelper-perl_13.20_all.deb ...
Unpacking libdebhelper-perl (13.20) ...
Selecting previously unselected package libtool.
Preparing to unpack .../36-libtool_2.4.7-8_all.deb ...
Unpacking libtool (2.4.7-8) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../37-dh-autoreconf_20_all.deb ...
Unpacking dh-autoreconf (20) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../38-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../39-dh-strip-nondeterminism_1.14.0-1_all.deb ...
Unpacking dh-strip-nondeterminism (1.14.0-1) ...
Selecting previously unselected package libelf1t64:arm64.
Preparing to unpack .../40-libelf1t64_0.192-4_arm64.deb ...
Unpacking libelf1t64:arm64 (0.192-4) ...
Selecting previously unselected package dwz.
Preparing to unpack .../41-dwz_0.15-1+b1_arm64.deb ...
Unpacking dwz (0.15-1+b1) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../42-po-debconf_1.0.21+nmu1_all.deb ...
Unpacking po-debconf (1.0.21+nmu1) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../43-debhelper_13.20_all.deb ...
Unpacking debhelper (13.20) ...
Selecting previously unselected package libfakeroot:arm64.
Preparing to unpack .../44-libfakeroot_1.36-1_arm64.deb ...
Unpacking libfakeroot:arm64 (1.36-1) ...
Selecting previously unselected package fakeroot.
Preparing to unpack .../45-fakeroot_1.36-1_arm64.deb ...
Unpacking fakeroot (1.36-1) ...
Selecting previously unselected package sbuild-build-depends-main-dummy.
Preparing to unpack .../46-sbuild-build-depends-main-dummy_0.invalid.0_arm64.deb ...
Unpacking sbuild-build-depends-main-dummy (0.invalid.0) ...
Setting up libfile-stripnondeterminism-perl (1.14.0-1) ...
Setting up po-debconf (1.0.21+nmu1) ...
Setting up libdebhelper-perl (13.20) ...
Setting up linux-libc-dev (6.11.9-1) ...
Setting up m4 (1.4.19-4) ...
Setting up libfakeroot:arm64 (1.36-1) ...
Setting up libelf1t64:arm64 (0.192-4) ...
Setting up fakeroot (1.36-1) ...
update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode
Setting up autotools-dev (20220109.1) ...
Setting up rpcsvc-proto (1.4.3-1+b1) ...
Setting up libmpfr6:arm64 (4.2.1-1+b2) ...
Setting up libmpc3:arm64 (1.3.1-1+b3) ...
Setting up autopoint (0.22.5-2) ...
Setting up autoconf (2.72-3) ...
Setting up libubsan1:arm64 (14.2.0-8) ...
Setting up dh-strip-nondeterminism (1.14.0-1) ...
Setting up dwz (0.15-1+b1) ...
Setting up libhwasan0:arm64 (14.2.0-8) ...
Setting up libcrypt-dev:arm64 (1:4.4.36-5) ...
Setting up libasan8:arm64 (14.2.0-8) ...
Setting up libtsan2:arm64 (14.2.0-8) ...
Setting up libisl23:arm64 (0.27-1) ...
Setting up libc-dev-bin (2.40-3) ...
Setting up libcc1-0:arm64 (14.2.0-8) ...
Setting up liblsan0:arm64 (14.2.0-8) ...
Setting up libitm1:arm64 (14.2.0-8) ...
Setting up automake (1:1.16.5-1.3) ...
update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode
Setting up cpp-14-aarch64-linux-gnu (14.2.0-8) ...
Setting up libc6-dev:arm64 (2.40-3) ...
Setting up libgcc-14-dev:arm64 (14.2.0-8) ...
Setting up libstdc++-14-dev:arm64 (14.2.0-8) ...
Setting up cpp-aarch64-linux-gnu (4:14.2.0-1) ...
Setting up cpp-14 (14.2.0-8) ...
Setting up cpp (4:14.2.0-1) ...
Setting up gcc-14-aarch64-linux-gnu (14.2.0-8) ...
Setting up gcc-aarch64-linux-gnu (4:14.2.0-1) ...
Setting up g++-14-aarch64-linux-gnu (14.2.0-8) ...
Setting up gcc-14 (14.2.0-8) ...
Setting up g++-aarch64-linux-gnu (4:14.2.0-1) ...
Setting up g++-14 (14.2.0-8) ...
Setting up libtool (2.4.7-8) ...
Setting up gcc (4:14.2.0-1) ...
Setting up dh-autoreconf (20) ...
Setting up g++ (4:14.2.0-1) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up build-essential (12.12) ...
Setting up debhelper (13.20) ...
Setting up sbuild-build-depends-main-dummy (0.invalid.0) ...
Processing triggers for man-db (2.13.0-1) ...
Processing triggers for libc-bin (2.40-3) ...
+------------------------------------------------------------------------------+
| Check architectures |
+------------------------------------------------------------------------------+
Arch check ok (arm64 included in all)
+------------------------------------------------------------------------------+
| Build environment |
+------------------------------------------------------------------------------+
Kernel: Linux 6.1.0-27-cloud-arm64 #1 SMP Debian 6.1.115-1 (2024-11-01) arm64 (aarch64)
Toolchain package versions: binutils_2.43.1-5 dpkg-dev_1.22.12~1.gbp82cafd g++-14_14.2.0-8 gcc-14_14.2.0-8 libc6-dev_2.40-3 libstdc++-14-dev_14.2.0-8 libstdc++6_14.2.0-8 linux-libc-dev_6.11.9-1
Package versions: appstream_1.0.3-1+b1 apt_2.9.11 autoconf_2.72-3 automake_1:1.16.5-1.3 autopoint_0.22.5-2 autotools-dev_20220109.1 base-files_13.5 base-passwd_3.6.5 bash_5.2.32-1+b2 binutils_2.43.1-5 binutils-aarch64-linux-gnu_2.43.1-5 binutils-common_2.43.1-5 bsdextrautils_2.40.2-11 bsdutils_1:2.40.2-11 build-essential_12.12 bzip2_1.0.8-6 ca-certificates_20240203 coreutils_9.5-1+b1 cpp_4:14.2.0-1 cpp-14_14.2.0-8 cpp-14-aarch64-linux-gnu_14.2.0-8 cpp-aarch64-linux-gnu_4:14.2.0-1 dash_0.5.12-9+b1 debconf_1.5.87 debhelper_13.20 debian-archive-keyring_2023.4 debianutils_5.21 dh-autoreconf_20 dh-strip-nondeterminism_1.14.0-1 diffstat_1.67-1 diffutils_1:3.10-1+b1 dpkg_1.22.12~1.gbp82cafd dpkg-dev_1.22.12~1.gbp82cafd dwz_0.15-1+b1 e2fsprogs_1.47.1-1+b1 fakeroot_1.36-1 file_1:5.45-3+b1 findutils_4.10.0-3 g++_4:14.2.0-1 g++-14_14.2.0-8 g++-14-aarch64-linux-gnu_14.2.0-8 g++-aarch64-linux-gnu_4:14.2.0-1 gcc_4:14.2.0-1 gcc-14_14.2.0-8 gcc-14-aarch64-linux-gnu_14.2.0-8 gcc-14-base_14.2.0-8 gcc-aarch64-linux-gnu_4:14.2.0-1 gettext_0.22.5-2 gettext-base_0.22.5-2 gpg_2.2.45-2 gpgconf_2.2.45-2 gpgv_2.2.45-2 grep_3.11-4+b1 groff-base_1.23.0-5 gzip_1.12-1.1+b1 hostname_3.25 init-system-helpers_1.67 intltool-debian_0.35.0+20060710.6 iso-codes_4.17.0-1 libacl1_2.3.2-2+b1 libaliased-perl_0.34-3 libappstream5_1.0.3-1+b1 libapt-pkg-perl_0.1.40+b6 libapt-pkg6.0t64_2.9.11 libarchive-zip-perl_1.68-1 libasan8_14.2.0-8 libassuan9_3.0.1-2 libatomic1_14.2.0-8 libattr1_1:2.5.2-2 libaudit-common_1:4.0.2-2 libaudit1_1:4.0.2-2 libb-hooks-endofscope-perl_0.28-1 libb-hooks-op-check-perl_0.22-3+b2 libberkeleydb-perl_0.66-1 libbinutils_2.43.1-5 libblkid1_2.40.2-11 libbrotli1_1.1.0-2+b6 libbsd0_0.12.2-2 libbz2-1.0_1.0.8-6 libc-bin_2.40-3 libc-dev-bin_2.40-3 libc6_2.40-3 libc6-dev_2.40-3 libcap-ng0_0.8.5-3+b1 libcap2_1:2.66-5+b1 libcapture-tiny-perl_0.48-2 libcc1-0_14.2.0-8 libcgi-pm-perl_4.66-1 libclass-data-inheritable-perl_0.10-1 libclass-inspector-perl_1.36-3 libclass-method-modifiers-perl_2.15-1 libclass-xsaccessor-perl_1.19-4+b4 libclone-perl_0.47-1+b1 libcom-err2_1.47.1-1+b1 libconfig-tiny-perl_2.30-1 libconst-fast-perl_0.014-2 libcpanel-json-xs-perl_4.38-1+b1 libcrypt-dev_1:4.4.36-5 libcrypt1_1:4.4.36-5 libctf-nobfd0_2.43.1-5 libctf0_2.43.1-5 libcurl3t64-gnutls_8.11.0-1 libdata-dpath-perl_0.60-1 libdata-messagepack-perl_1.02-1+b4 libdata-optlist-perl_0.114-1 libdata-validate-domain-perl_0.15-1 libdata-validate-ip-perl_0.31-1 libdata-validate-uri-perl_0.07-3 libdb5.3t64_5.3.28+dfsg2-9 libdebconfclient0_0.273 libdebhelper-perl_13.20 libdevel-callchecker-perl_0.009-1+b1 libdevel-size-perl_0.84-1+b1 libdevel-stacktrace-perl_2.0500-1 libdpkg-perl_1.22.12~1.gbp82cafd libdynaloader-functions-perl_0.004-1 libelf1t64_0.192-4 libemail-address-xs-perl_1.05-1+b4 libencode-locale-perl_1.05-3 libexception-class-perl_1.45-1 libext2fs2t64_1.47.1-1+b1 libfakeroot_1.36-1 libffi8_3.4.6-1 libfile-basedir-perl_0.09-2 libfile-find-rule-perl_0.34-3 libfile-listing-perl_6.16-1 libfile-sharedir-perl_1.118-3 libfile-stripnondeterminism-perl_1.14.0-1 libfont-ttf-perl_1.06-2 libgcc-14-dev_14.2.0-8 libgcc-s1_14.2.0-8 libgcrypt20_1.11.0-6 libgdbm-compat4t64_1.24-2 libgdbm6t64_1.24-2 libglib2.0-0t64_2.82.2-3 libgmp10_2:6.3.0+dfsg-2+b2 libgnutls30t64_3.8.8-2 libgomp1_14.2.0-8 libgpg-error0_1.50-4 libgprofng0_2.43.1-5 libgssapi-krb5-2_1.21.3-3 libhogweed6t64_3.10-1+b1 libhtml-form-perl_6.12-1 libhtml-html5-entities-perl_0.004-3 libhtml-parser-perl_3.83-1+b1 libhtml-tagset-perl_3.24-1 libhtml-tokeparser-simple-perl_3.16-4 libhtml-tree-perl_5.07-3 libhttp-cookies-perl_6.11-1 libhttp-date-perl_6.06-1 libhttp-message-perl_7.00-2 libhttp-negotiate-perl_6.01-2 libhwasan0_14.2.0-8 libicu72_72.1-5+b1 libidn2-0_2.3.7-2+b1 libimport-into-perl_1.002005-2 libio-html-perl_1.004-3 libio-interactive-perl_1.025-1 libio-socket-ssl-perl_2.089-1 libio-string-perl_1.08-4 libipc-run3-perl_0.049-1 libipc-system-simple-perl_1.30-2 libisl23_0.27-1 libiterator-perl_0.03+ds1-2 libiterator-util-perl_0.02+ds1-2 libitm1_14.2.0-8 libjansson4_2.14-2+b3 libjson-maybexs-perl_1.004008-1 libk5crypto3_1.21.3-3 libkeyutils1_1.6.3-4 libkrb5-3_1.21.3-3 libkrb5support0_1.21.3-3 libldap-2.5-0_2.5.18+dfsg-3+b1 liblist-compare-perl_0.55-2 liblist-someutils-perl_0.59-1 liblist-utilsby-perl_0.12-2 liblsan0_14.2.0-8 liblwp-mediatypes-perl_6.04-2 liblwp-protocol-https-perl_6.14-1 liblz1_1.15~pre2-1 liblz4-1_1.9.4-3+b1 liblzma5_5.6.3-1+b1 liblzo2-2_2.10-3+b1 libmagic-mgc_1:5.45-3+b1 libmagic1t64_1:5.45-3+b1 libmarkdown2_2.2.7-2.1 libmd0_1.1.0-2+b1 libmldbm-perl_2.05-4 libmodule-implementation-perl_0.09-2 libmodule-runtime-perl_0.016-2 libmoo-perl_2.005005-1 libmoox-aliases-perl_0.001006-2 libmount1_2.40.2-11 libmouse-perl_2.5.11-1+b1 libmpc3_1.3.1-1+b3 libmpfr6_4.2.1-1+b2 libnamespace-clean-perl_0.27-2 libnet-domain-tld-perl_1.75-4 libnet-http-perl_6.23-1 libnet-ipv6addr-perl_1.02-1 libnet-netmask-perl_2.0002-2 libnet-ssleay-perl_1.94-2 libnetaddr-ip-perl_4.079+dfsg-2+b4 libnettle8t64_3.10-1+b1 libnghttp2-14_1.64.0-1 libnghttp3-9_1.4.0-1+b1 libngtcp2-16_1.6.0-1 libngtcp2-crypto-gnutls8_1.6.0-1 libnumber-compare-perl_0.03-3 libp11-kit0_0.25.5-2+b1 libpackage-stash-perl_0.40-1 libpam-modules_1.5.3-7+b1 libpam-modules-bin_1.5.3-7+b1 libpam-runtime_1.5.3-7 libpam0g_1.5.3-7+b1 libparams-classify-perl_0.015-2+b4 libparams-util-perl_1.102-3+b1 libpath-tiny-perl_0.146-1 libpcre2-8-0_10.44-4 libperl5.40_5.40.0-7 libperlio-gzip-perl_0.20-1+b4 libperlio-utf8-strict-perl_0.010-1+b3 libpipeline1_1.5.8-1 libproc-processtable-perl_0.636-1+b3 libpsl5t64_0.21.2-1.1+b1 libreadline8t64_8.2-5 libregexp-wildcards-perl_1.05-3 librole-tiny-perl_2.002004-1 librtmp1_2.4+20151223.gitfa8646d.1-2+b5 libsasl2-2_2.1.28+dfsg1-8 libsasl2-modules-db_2.1.28+dfsg1-8 libseccomp2_2.5.5-1+b3 libselinux1_3.7-3+b1 libsemanage-common_3.7-2 libsemanage2_3.7-2+b1 libsepol2_3.7-1 libsereal-decoder-perl_5.004+ds-1+b3 libsereal-encoder-perl_5.004+ds-1+b3 libsframe1_2.43.1-5 libsmartcols1_2.40.2-11 libsort-versions-perl_1.62-3 libsqlite3-0_3.46.1-1 libss2_1.47.1-1+b1 libssh2-1t64_1.11.1-1 libssl3t64_3.3.2-2 libstdc++-14-dev_14.2.0-8 libstdc++6_14.2.0-8 libstemmer0d_2.2.0-4+b2 libstrictures-perl_2.000006-1 libsub-exporter-perl_0.990-1 libsub-exporter-progressive-perl_0.001013-3 libsub-identify-perl_0.14-3+b3 libsub-install-perl_0.929-1 libsub-name-perl_0.27-1+b3 libsub-quote-perl_2.006008-1 libsyntax-keyword-try-perl_0.30-1+b1 libsystemd0_257~rc2-3 libtasn1-6_4.19.0-3+b3 libterm-readkey-perl_2.38-2+b4 libtext-glob-perl_0.11-3 libtext-levenshteinxs-perl_0.03-5+b4 libtext-markdown-discount-perl_0.16-1+b3 libtext-xslate-perl_3.5.9-2+b1 libtime-duration-perl_1.21-2 libtime-moment-perl_0.44-2+b4 libtimedate-perl_2.3300-2 libtinfo6_6.5-2+b1 libtool_2.4.7-8 libtry-tiny-perl_0.32-1 libtsan2_14.2.0-8 libubsan1_14.2.0-8 libuchardet0_0.0.8-1+b2 libudev1_257~rc2-3 libunicode-utf8-perl_0.62-2+b3 libunistring5_1.2-1+b1 liburi-perl_5.30-1 libuuid1_2.40.2-11 libvariable-magic-perl_0.64-1+b1 libwww-mechanize-perl_2.19-1 libwww-perl_6.77-1 libwww-robotrules-perl_6.02-1 libxml-libxml-perl_2.0207+dfsg+really+2.0134-5+b1 libxml-namespacesupport-perl_1.12-2 libxml-sax-base-perl_1.09-3 libxml-sax-perl_1.02+dfsg-3 libxml2_2.12.7+dfsg+really2.9.14-0.2+b1 libxmlb2_0.3.21-1 libxs-parse-keyword-perl_0.46-1+b1 libxxhash0_0.8.2-2+b2 libyaml-0-2_0.2.5-1+b2 libyaml-libyaml-perl_0.902.0+ds-2+b1 libzstd1_1.5.6+dfsg-1+b1 lintian_2.120.0 linux-libc-dev_6.11.9-1 login_1:4.16.0-2+really2.40.2-11 login.defs_1:4.16.0-5 logsave_1.47.1-1+b1 lzop_1.04-2+b1 m4_1.4.19-4 make_4.3-4.1+b1 man-db_2.13.0-1 mawk_1.3.4.20240905-1 mount_2.40.2-11 ncurses-base_6.5-2 ncurses-bin_6.5-2+b1 netbase_6.4 openssl_3.3.2-2 openssl-provider-legacy_3.3.2-2 passwd_1:4.16.0-5 patch_2.7.6-7+b1 patchutils_0.4.2-1+b1 perl_5.40.0-7 perl-base_5.40.0-7 perl-modules-5.40_5.40.0-7 perl-openssl-defaults_7+b2 plzip_1.11-2 po-debconf_1.0.21+nmu1 readline-common_8.2-5 rpcsvc-proto_1.4.3-1+b1 sbuild-build-depends-main-dummy_0.invalid.0 sed_4.9-2+b1 sensible-utils_0.0.24 shared-mime-info_2.4-5+b1 sysvinit-utils_3.11-1 t1utils_1.41-4+b1 tar_1.35+dfsg-3+b1 tzdata_2024b-3 ucf_3.0043+nmu1 unzip_6.0-28+b1 util-linux_2.40.2-11 xz-utils_5.6.3-1+b1 zlib1g_1:1.3.dfsg+really1.3.1-1+b1
+------------------------------------------------------------------------------+
| Build |
+------------------------------------------------------------------------------+
Unpack source
-------------
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 3.0 (quilt)
Source: sparsehash
Binary: libsparsehash-dev
Architecture: all
Version: 2.0.3-2
Maintainer: Athena Capital Research <acr-debian@athenacr.com>
Uploaders: Roberto C. Sanchez <roberto@connexer.com>
Homepage: https://github.com/sparsehash/sparsehash
Standards-Version: 4.5.0
Build-Depends: debhelper (>= 10)
Package-List:
libsparsehash-dev deb libdevel optional arch=all
Checksums-Sha1:
94a9aad9167275af41b13122c60754ad1a5adb34 322046 sparsehash_2.0.3.orig.tar.gz
b7967d2776fcbcda0aa56f066fdaf9723632068c 4740 sparsehash_2.0.3-2.debian.tar.xz
Checksums-Sha256:
05e986a5c7327796dad742182b2d10805a8d4f511ad090da0490f146c1ff7a8c 322046 sparsehash_2.0.3.orig.tar.gz
3a2dfb42b354c7f654b065a5db1a31ae1c7bb76cc703f65be5f80192ca2ab2df 4740 sparsehash_2.0.3-2.debian.tar.xz
Files:
d8d5e2538c1c25577b3f066d7a55e99e 322046 sparsehash_2.0.3.orig.tar.gz
6a312c140a6f33018b78df81b4bab4ea 4740 sparsehash_2.0.3-2.debian.tar.xz
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEz9ERzDttUsU/BH8iLNd4Xt2nsg8FAl6jrUUACgkQLNd4Xt2n
sg+7DRAAr5TnzCu+JmXvz3RIC1dRUvOnVNuFevFnl8YdRb5dq226+rJQEXv/BwvW
ev4uoDWAhus1gkPW3sJeBxowpcjrz5J/YJCnHWrTHP23Z/WqXmjAiiwxyBuDhi+u
xX6LbgGlUD0U5x8kLNHZ/d7pGp3AL5Rdf+pBB5rxuYKfbQ44pKDAeNzvZeZAzbIl
f/VrpU/7yIQwOEqelb/J8j07Vo4PKxK0Ei/I9UOE+XnTTXUY/jL0O7hvtOP0pjzc
iBksNJRxQdFbCW6PtXaniXx8AKFInI0IjS+hMB5XaR4MovLQ7BLdWMcYh35PBYCc
BVc6rAnveG1wI3e4bd957/gLrUiTXnYl0i0ynJCHcQBasTEC18zpaJoksJI8yl3c
hQej7pjIZIb4p3sQ05EKoDATUZGMdBZ9oF9i9n4zMu5xtwyjecYpKwLfmajkkr9G
yXgKt80CMbd5jMWMixkmfPOo1kj8/u+ZAmhMoDKkM4r4AT49Hnq5c+SmCSZP1dEd
KvFtgS+ITWiXNaDc6c22rD2dcrbSX+97VvsXx6O72w4rO+sMgPua2aHZXayYUnkf
GkK9pDK/wG9M6ha6f/dhG2nz6O4zwzCRJt5pS4oDlNXiSVz85c1aZ5cAkV0lnF6J
rKVvwX58ie8/mHHCh00+gpHQrN8nMFhO8++BI//Gmtcc66/qAXQ=
=T/dz
-----END PGP SIGNATURE-----
gpgv: Signature made Sat Apr 25 03:23:49 2020 UTC
gpgv: using RSA key CFD111CC3B6D52C53F047F222CD7785EDDA7B20F
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for ./sparsehash_2.0.3-2.dsc: no acceptable signature found
dpkg-source: info: extracting sparsehash in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking sparsehash_2.0.3.orig.tar.gz
dpkg-source: info: unpacking sparsehash_2.0.3-2.debian.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying 00_adjust_upstream_build.patch
Check disk space
----------------
Sufficient free space for build
User Environment
----------------
APT_CONFIG=/var/lib/sbuild/apt.conf
HOME=/sbuild-nonexistent
LANG=C.UTF-8
LC_ALL=C.UTF-8
LOGNAME=debusine-worker
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SHELL=/bin/sh
USER=debusine-worker
dpkg-buildpackage
-----------------
Command: dpkg-buildpackage -us -uc -b -rfakeroot
dpkg-buildpackage: info: source package sparsehash
dpkg-buildpackage: info: source version 2.0.3-2
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Roberto C. Sanchez <roberto@connexer.com>
dpkg-source --before-build .
dpkg-buildpackage: info: host architecture arm64
dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore
debian/rules clean
dh clean
dh_clean
rm -f debian/debhelper-build-stamp
rm -rf debian/.debhelper/
rm -f -- debian/libsparsehash-dev.substvars debian/files
rm -fr -- debian/libsparsehash-dev/ debian/tmp/
find . \( \( \
\( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path .\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o -type f -a \
\( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
-o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
-o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
-o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
\) -exec rm -f {} + \) -o \
\( -type d -a \( -name autom4te.cache -o -name __pycache__ \) -prune -exec rm -rf {} + \) \)
debian/rules binary
dh binary
dh_update_autotools_config
cp -an --reflink=auto config.guess debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp
mv debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6
cp -f /usr/share/misc/config.guess ./config.guess
cp -an --reflink=auto config.sub debian/.debhelper/bucket/files/eeed1b8911b517397de6df8b1a16ff5fb9432ab599401044fc04392d1835bdf9.tmp
mv debian/.debhelper/bucket/files/eeed1b8911b517397de6df8b1a16ff5fb9432ab599401044fc04392d1835bdf9.tmp debian/.debhelper/bucket/files/eeed1b8911b517397de6df8b1a16ff5fb9432ab599401044fc04392d1835bdf9
cp -f /usr/share/misc/config.sub ./config.sub
dh_autoreconf
find ! -ipath "./debian/*" -a ! \( -path '*/.git/*' -o -path '*/.hg/*' -o -path '*/.bzr/*' -o -path '*/.svn/*' -o -path '*/CVS/*' \) -a -type f -exec md5sum {} + -o -type l -printf "symlink %p
" > debian/autoreconf.before
grep -q ^XDT_ configure.ac
autoreconf -f -i
configure.ac:12: warning: 'AM_CONFIG_HEADER': this macro is obsolete.
configure.ac:12: You should use the 'AC_CONFIG_HEADERS' macro instead.
./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from...
aclocal.m4:745: AM_CONFIG_HEADER is expanded from...
configure.ac:12: the top level
configure.ac:21: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:21: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.ac:21: the top level
configure.ac:42: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:42: You should run autoupdate.
./lib/autoconf/c.m4:72: AC_LANG_C is expanded from...
m4/acx_pthread.m4:63: ACX_PTHREAD is expanded from...
configure.ac:42: the top level
configure.ac:42: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:42: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:63: ACX_PTHREAD is expanded from...
configure.ac:42: the top level
configure.ac:51: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/c.m4:270: AC_LANG_CPLUSPLUS is expanded from...
lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
m4/namespaces.m4:2: AC_CXX_NAMESPACES is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:51: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
m4/namespaces.m4:2: AC_CXX_NAMESPACES is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:51: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/c.m4:270: AC_LANG_CPLUSPLUS is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:51: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:52: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:52: You should run autoupdate.
./lib/autoconf/c.m4:270: AC_LANG_CPLUSPLUS is expanded from...
m4/stl_hash_fun.m4:14: AC_CXX_STL_HASH_FUN is expanded from...
configure.ac:52: the top level
configure.ac:52: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:52: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
m4/stl_hash_fun.m4:14: AC_CXX_STL_HASH_FUN is expanded from...
configure.ac:52: the top level
configure.ac:16: installing './compile'
Makefile.am:156: warning: source file 'src/hashtable_test.cc' is in a subdirectory,
Makefile.am:156: but option 'subdir-objects' is disabled
automake: warning: possible forward-incompatibility.
automake: At least one source file is in a subdirectory, but the 'subdir-objects'
automake: automake option hasn't been enabled. For now, the corresponding output
automake: object file(s) will be placed in the top-level directory. However, this
automake: behavior may change in a future Automake major version, with object
automake: files being placed in the same subdirectory as the corresponding sources.
automake: You are advised to start using 'subdir-objects' option throughout your
automake: project, to avoid future incompatibilities.
Makefile.am:140: warning: source file 'src/libc_allocator_with_realloc_test.cc' is in a subdirectory,
Makefile.am:140: but option 'subdir-objects' is disabled
Makefile.am:172: warning: source file 'src/simple_compat_test.cc' is in a subdirectory,
Makefile.am:172: but option 'subdir-objects' is disabled
Makefile.am:166: warning: source file 'src/simple_test.cc' is in a subdirectory,
Makefile.am:166: but option 'subdir-objects' is disabled
Makefile.am:148: warning: source file 'src/sparsetable_unittest.cc' is in a subdirectory,
Makefile.am:148: but option 'subdir-objects' is disabled
Makefile.am:125: warning: source file 'src/template_util_unittest.cc' is in a subdirectory,
Makefile.am:125: but option 'subdir-objects' is disabled
Makefile.am:179: warning: source file 'src/time_hash_map.cc' is in a subdirectory,
Makefile.am:179: but option 'subdir-objects' is disabled
Makefile.am:132: warning: source file 'src/type_traits_unittest.cc' is in a subdirectory,
Makefile.am:132: but option 'subdir-objects' is disabled
parallel-tests: installing './test-driver'
find ! -ipath "./debian/*" -a ! \( -path '*/.git/*' -o -path '*/.hg/*' -o -path '*/.bzr/*' -o -path '*/.svn/*' -o -path '*/CVS/*' \) -a -type f -exec md5sum {} + -o -type l -printf "symlink %p
" > debian/autoreconf.after
dh_auto_configure
./configure --build=aarch64-linux-gnu --prefix=/usr --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules --libdir=\${prefix}/lib/aarch64-linux-gnu --libexecdir=\${prefix}/lib/aarch64-linux-gnu --disable-maintainer-mode --disable-dependency-tracking
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for g++... g++
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++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... none
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 whether gcc understands -c and -o together... yes
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
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 grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for memcpy... yes
checking for memmove... yes
checking for uint16_t... yes
checking for u_int16_t... yes
checking for __uint16... no
checking for long long... yes
checking for sys/resource.h... yes
checking for unistd.h... (cached) yes
checking for sys/time.h... yes
checking for sys/utsname.h... yes
checking for google/malloc_extension.h... no
checking whether the compiler implements namespaces... yes
checking the location of hash_map... <unordered_map>
checking how to include hash_fun directly... <functional>
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/config.h
config.status: executing depfiles commands
dh_auto_build
make -j8
make[1]: Entering directory '/<<PKGBUILDDIR>>'
[ -d src/sparsehash/internal ] || mkdir -p src/sparsehash/internal
echo "/*" > src/sparsehash/internal/_sparsehash_config
echo " * NOTE: This file is for internal use only." >> src/sparsehash/internal/_sparsehash_config
echo " * Do not use these #defines in your own program!" >> src/sparsehash/internal/_sparsehash_config
echo " */" >> src/sparsehash/internal/_sparsehash_config
mawk '{prevline=currline; currline=$0;} \
/^#/ {in_second_file = 1;} \
!in_second_file {if (currline !~ /^ *$/) {inc[currline]=0}}; \
in_second_file { for (i in inc) { \
if (index(currline, i) != 0) { \
print "\n"prevline"\n"currline; \
delete inc[i]; \
} \
} }' \
./src/config.h.include ./src/config.h \
>> src/sparsehash/internal/_sparsehash_config
mv -f src/sparsehash/internal/_sparsehash_config src/sparsehash/internal/sparseconfig.h
make all-am
make[2]: Entering directory '/<<PKGBUILDDIR>>'
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o template_util_unittest.o `test -f 'src/template_util_unittest.cc' || echo './'`src/template_util_unittest.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o type_traits_unittest.o `test -f 'src/type_traits_unittest.cc' || echo './'`src/type_traits_unittest.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o libc_allocator_with_realloc_test.o `test -f 'src/libc_allocator_with_realloc_test.cc' || echo './'`src/libc_allocator_with_realloc_test.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o sparsetable_unittest.o `test -f 'src/sparsetable_unittest.cc' || echo './'`src/sparsetable_unittest.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o hashtable_test.o `test -f 'src/hashtable_test.cc' || echo './'`src/hashtable_test.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o simple_test.o `test -f 'src/simple_test.cc' || echo './'`src/simple_test.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o simple_compat_test.o `test -f 'src/simple_compat_test.cc' || echo './'`src/simple_compat_test.cc
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o time_hash_map-time_hash_map.o `test -f 'src/time_hash_map.cc' || echo './'`src/time_hash_map.cc
echo 'prefix=/usr' > "libsparsehash.pc".tmp
echo 'includedir='`echo '/usr/include' | sed 's@^/usr@${prefix}@'` >> "libsparsehash.pc".tmp
echo '' >> "libsparsehash.pc".tmp
echo 'Name: sparsehash' >> "libsparsehash.pc".tmp
echo 'Version: 2.0.3' >> "libsparsehash.pc".tmp
grep '^Summary:' ./packages/rpm/rpm.spec | sed s/^Summary:/Description:/ | head -n1 >> "libsparsehash.pc".tmp
grep '^URL: ' ./packages/rpm/rpm.spec >> "libsparsehash.pc".tmp
echo 'Requires:' >> "libsparsehash.pc".tmp
echo 'Libs:' >> "libsparsehash.pc".tmp
echo 'Cflags: -I${includedir}' >> "libsparsehash.pc".tmp
mv -f "libsparsehash.pc".tmp "libsparsehash.pc"
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o template_util_unittest template_util_unittest.o
In file included from src/sparsetable_unittest.cc:47:
./src/sparsehash/sparsetable: In member function ‘google::sparsetable<int>& google::sparsetable<int>::operator=(const google::sparsetable<int>&)’:
./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared ‘constexpr google::sparsetable<int>::Settings& google::sparsetable<int>::Settings::operator=(const google::sparsetable<int>::Settings&)’ is deprecated [-Wdeprecated-copy]
1358 | class sparsetable {
| ^~~~~~~~~~~
./src/sparsehash/sparsetable:1798:5: note: because ‘google::sparsetable<int>::Settings’ has user-provided ‘google::sparsetable<T, GROUP_SIZE, Alloc>::Settings::Settings(const google::sparsetable<T, GROUP_SIZE, Alloc>::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<int>]’
1798 | Settings(const Settings& s)
| ^~~~~~~~
src/sparsetable_unittest.cc: In function ‘void TestAllocator()’:
src/sparsetable_unittest.cc:621:9: note: synthesized method ‘google::sparsetable<int>& google::sparsetable<int>::operator=(const google::sparsetable<int>&)’ first required here
621 | y = x;
| ^
./src/sparsehash/sparsetable: In member function ‘google::sparsetable<int, 48, std::allocator<int> >& google::sparsetable<int, 48, std::allocator<int> >::operator=(const google::sparsetable<int, 48, std::allocator<int> >&)’:
./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared ‘constexpr google::sparsetable<int, 48, std::allocator<int> >::Settings& google::sparsetable<int, 48, std::allocator<int> >::Settings::operator=(const google::sparsetable<int, 48, std::allocator<int> >::Settings&)’ is deprecated [-Wdeprecated-copy]
1358 | class sparsetable {
| ^~~~~~~~~~~
./src/sparsehash/sparsetable:1798:5: note: because ‘google::sparsetable<int, 48, std::allocator<int> >::Settings’ has user-provided ‘google::sparsetable<T, GROUP_SIZE, Alloc>::Settings::Settings(const google::sparsetable<T, GROUP_SIZE, Alloc>::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator<int>]’
1798 | Settings(const Settings& s)
| ^~~~~~~~
src/sparsetable_unittest.cc: In function ‘void TestAllocator()’:
src/sparsetable_unittest.cc:639:9: note: synthesized method ‘google::sparsetable<int, 48, std::allocator<int> >& google::sparsetable<int, 48, std::allocator<int> >::operator=(const google::sparsetable<int, 48, std::allocator<int> >&)’ first required here
639 | v = u;
| ^
./src/sparsehash/sparsetable: In member function ‘google::sparsetable<std::__cxx11::basic_string<char> >& google::sparsetable<std::__cxx11::basic_string<char> >::operator=(const google::sparsetable<std::__cxx11::basic_string<char> >&)’:
./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared ‘constexpr google::sparsetable<std::__cxx11::basic_string<char> >::Settings& google::sparsetable<std::__cxx11::basic_string<char> >::Settings::operator=(const google::sparsetable<std::__cxx11::basic_string<char> >::Settings&)’ is deprecated [-Wdeprecated-copy]
1358 | class sparsetable {
| ^~~~~~~~~~~
./src/sparsehash/sparsetable:1798:5: note: because ‘google::sparsetable<std::__cxx11::basic_string<char> >::Settings’ has user-provided ‘google::sparsetable<T, GROUP_SIZE, Alloc>::Settings::Settings(const google::sparsetable<T, GROUP_SIZE, Alloc>::Settings&) [with T = std::__cxx11::basic_string<char>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >]’
1798 | Settings(const Settings& s)
| ^~~~~~~~
src/sparsetable_unittest.cc: In function ‘void TestAllocator()’:
src/sparsetable_unittest.cc:657:9: note: synthesized method ‘google::sparsetable<std::__cxx11::basic_string<char> >& google::sparsetable<std::__cxx11::basic_string<char> >::operator=(const google::sparsetable<std::__cxx11::basic_string<char> >&)’ first required here
657 | b = a;
| ^
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o
In file included from ./src/sparsehash/internal/sparsehashtable.h:106,
from ./src/sparsehash/sparse_hash_set:97,
from ./src/google/sparse_hash_set:34,
from src/simple_compat_test.cc:40:
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; reference = std::pair<const int, int>&; size_type = short unsigned int; const_reference = const std::pair<const int, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; reference = std::pair<const int, int>&; size_type = long unsigned int; const_reference = const std::pair<const int, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const int, int>, int, std::hash<int>, google::sparse_hash_map<int, int>::SelectKey, google::sparse_hash_map<int, int>::SetKey, std::equal_to<int>, google::libc_allocator_with_realloc<std::pair<const int, int> > >; const_reference = const std::pair<const int, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, int>::DefaultValue; Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; value_type = std::pair<const int, int>; key_type = int]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash<int>; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; data_type = int; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/simple_compat_test.cc:74:11: required from here
74 | smap[i] = i+1;
| ^
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_algobase.h:64,
from /usr/include/c++/14/algorithm:60,
from ./src/sparsehash/sparse_hash_set:92:
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, int>’ declared here
284 | struct pair
| ^~~~
In file included from ./src/sparsehash/internal/sparsehashtable.h:106,
from ./src/sparsehash/sparse_hash_set:97,
from src/simple_test.cc:40:
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; reference = std::pair<const int, int>&; size_type = short unsigned int; const_reference = const std::pair<const int, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; reference = std::pair<const int, int>&; size_type = long unsigned int; const_reference = const std::pair<const int, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const int, int>, int, std::hash<int>, google::sparse_hash_map<int, int>::SelectKey, google::sparse_hash_map<int, int>::SetKey, std::equal_to<int>, google::libc_allocator_with_realloc<std::pair<const int, int> > >; const_reference = const std::pair<const int, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, int>::DefaultValue; Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; value_type = std::pair<const int, int>; key_type = int]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash<int>; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; data_type = int; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/simple_test.cc:74:11: required from here
74 | smap[i] = i+1;
| ^
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_algobase.h:64,
from /usr/include/c++/14/algorithm:60,
from ./src/sparsehash/sparse_hash_set:92:
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, int>, 48, google::libc_allocator_with_realloc<std::pair<const int, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, int>, 48, google::libc_allocator_with_realloc<std::pair<const int, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries
| ^~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:655:22: required from ‘bool google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::resize_delta(size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to);
| ^~~
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, int>::DefaultValue; Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; value_type = std::pair<const int, int>; key_type = int]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash<int>; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; data_type = int; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/simple_compat_test.cc:74:11: required from here
74 | smap[i] = i+1;
| ^
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, int>, 48, google::libc_allocator_with_realloc<std::pair<const int, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, int>, 48, google::libc_allocator_with_realloc<std::pair<const int, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries
| ^~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:655:22: required from ‘bool google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::resize_delta(size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to);
| ^~~
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, int>::DefaultValue; Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; value_type = std::pair<const int, int>; key_type = int]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash<int>; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; data_type = int; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/simple_test.cc:74:11: required from here
74 | smap[i] = i+1;
| ^
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, int>’ declared here
284 | struct pair
| ^~~~
src/hashtable_test.cc: In member function ‘void {anonymous}::TEST_HashtableTest_SimpleDataTypeOptimizations::Run()’:
src/hashtable_test.cc:1777:27: warning: implicitly-declared ‘constexpr {anonymous}::Memmove& {anonymous}::Memmove::operator=(const {anonymous}::Memmove&)’ is deprecated [-Wdeprecated-copy]
1777 | memmove[i] = Memmove(i);
| ^
src/hashtable_test.cc:1742:3: note: because ‘{anonymous}::Memmove’ has user-provided ‘{anonymous}::Memmove::Memmove(const {anonymous}::Memmove&)’
1742 | Memmove(const Memmove& that) { this->i = that.i; num_copies++; }
| ^~~~~~~
src/hashtable_test.cc:1783:31: warning: implicitly-declared ‘constexpr {anonymous}::NoMemmove& {anonymous}::NoMemmove::operator=(const {anonymous}::NoMemmove&)’ is deprecated [-Wdeprecated-copy]
1783 | nomemmove[i] = NoMemmove(i);
| ^
src/hashtable_test.cc:1752:3: note: because ‘{anonymous}::NoMemmove’ has user-provided ‘{anonymous}::NoMemmove::NoMemmove(const {anonymous}::NoMemmove&)’
1752 | NoMemmove(const NoMemmove& that) { this->i = that.i; num_copies++; }
| ^~~~~~~~~
src/hashtable_test.cc:1789:45: warning: implicitly-declared ‘constexpr {anonymous}::Memmove& {anonymous}::Memmove::operator=(const {anonymous}::Memmove&)’ is deprecated [-Wdeprecated-copy]
1789 | memmove_nonstandard_alloc[i] = Memmove(i);
| ^
src/hashtable_test.cc:1742:3: note: because ‘{anonymous}::Memmove’ has user-provided ‘{anonymous}::Memmove::Memmove(const {anonymous}::Memmove&)’
1742 | Memmove(const Memmove& that) { this->i = that.i; num_copies++; }
| ^~~~~~~
src/hashtable_test.cc: In instantiation of ‘void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with TypeParam = google::HashtableInterface_SparseHashMap<int, int, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1: required from ‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap<int, int, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
171 | Run(); \
| ^~~
src/hashtable_test.cc:571:1: required from here
181 | TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
| ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used [-Wunused-but-set-variable]
577 | typename TypeParam::key_type kt;
| ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
583 | typename TypeParam::size_type st;
| ^~
src/hashtable_test.cc: In instantiation of ‘void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with TypeParam = google::HashtableInterface_SparseHashSet<int, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1: required from ‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet<int, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
171 | Run(); \
| ^~~
src/hashtable_test.cc:571:1: required from here
185 | TEST_onetype_##superclass##_##testname<superclass##_type2> t; \
| ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used [-Wunused-but-set-variable]
577 | typename TypeParam::key_type kt;
| ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
583 | typename TypeParam::size_type st;
| ^~
src/hashtable_test.cc: In instantiation of ‘void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with TypeParam = google::HashtableInterface_SparseHashtable<int, int, {anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, {anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1: required from ‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable<int, int, {anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, {anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
171 | Run(); \
| ^~~
src/hashtable_test.cc:571:1: required from here
189 | TEST_onetype_##superclass##_##testname<superclass##_type3> t; \
| ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used [-Wunused-but-set-variable]
577 | typename TypeParam::key_type kt;
| ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
583 | typename TypeParam::size_type st;
| ^~
src/hashtable_test.cc: In instantiation of ‘void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with TypeParam = google::HashtableInterface_DenseHashMap<int, int, kEmptyInt, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1: required from ‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap<int, int, kEmptyInt, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
171 | Run(); \
| ^~~
src/hashtable_test.cc:571:1: required from here
193 | TEST_onetype_##superclass##_##testname<superclass##_type4> t; \
| ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used [-Wunused-but-set-variable]
577 | typename TypeParam::key_type kt;
| ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
583 | typename TypeParam::size_type st;
| ^~
src/hashtable_test.cc: In instantiation of ‘void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with TypeParam = google::HashtableInterface_DenseHashSet<int, kEmptyInt, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1: required from ‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet<int, kEmptyInt, {anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
171 | Run(); \
| ^~~
src/hashtable_test.cc:571:1: required from here
197 | TEST_onetype_##superclass##_##testname<superclass##_type5> t; \
| ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used [-Wunused-but-set-variable]
577 | typename TypeParam::key_type kt;
| ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
583 | typename TypeParam::size_type st;
| ^~
src/hashtable_test.cc: In instantiation of ‘void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with TypeParam = google::HashtableInterface_DenseHashtable<int, int, kEmptyInt, {anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, {anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1: required from ‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable<int, int, kEmptyInt, {anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, {anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
171 | Run(); \
| ^~~
src/hashtable_test.cc:571:1: required from here
201 | TEST_onetype_##superclass##_##testname<superclass##_type6> t; \
| ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used [-Wunused-but-set-variable]
577 | typename TypeParam::key_type kt;
| ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
583 | typename TypeParam::size_type st;
| ^~
In file included from ./src/sparsehash/internal/sparsehashtable.h:106,
from ./src/sparsehash/sparse_hash_map:93,
from src/time_hash_map.cc:87:
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; reference = std::pair<const HashObject<4, 4>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<4, 4>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; reference = std::pair<const HashObject<4, 4>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<4, 4>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<4, 4>, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<4, 4>, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey, google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >; const_reference = const std::pair<const HashObject<4, 4>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::DefaultValue; Value = std::pair<const HashObject<4, 4>, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; value_type = std::pair<const HashObject<4, 4>, int>; key_type = HashObject<4, 4>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; data_type = int; key_type = HashObject<4, 4>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:721:60: required from here
721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<4, 4>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_algobase.h:64,
from /usr/include/c++/14/bits/stl_tree.h:63,
from /usr/include/c++/14/map:62,
from src/time_hash_map.cc:81:
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<4, 4>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; reference = std::pair<const HashObject<8, 8>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<8, 8>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; reference = std::pair<const HashObject<8, 8>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<8, 8>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<8, 8>, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<8, 8>, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey, google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >; const_reference = const std::pair<const HashObject<8, 8>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::DefaultValue; Value = std::pair<const HashObject<8, 8>, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; value_type = std::pair<const HashObject<8, 8>, int>; key_type = HashObject<8, 8>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; data_type = int; key_type = HashObject<8, 8>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:722:60: required from here
722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<8, 8>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<8, 8>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; reference = std::pair<const HashObject<16, 16>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<16, 16>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; reference = std::pair<const HashObject<16, 16>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<16, 16>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<16, 16>, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<16, 16>, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey, google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >; const_reference = const std::pair<const HashObject<16, 16>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::DefaultValue; Value = std::pair<const HashObject<16, 16>, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; value_type = std::pair<const HashObject<16, 16>, int>; key_type = HashObject<16, 16>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; data_type = int; key_type = HashObject<16, 16>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:723:63: required from here
723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<16, 16>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<16, 16>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; reference = std::pair<const HashObject<256, 256>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<256, 256>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; reference = std::pair<const HashObject<256, 256>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<256, 256>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<256, 256>, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<256, 256>, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey, google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >; const_reference = const std::pair<const HashObject<256, 256>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::DefaultValue; Value = std::pair<const HashObject<256, 256>, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; value_type = std::pair<const HashObject<256, 256>, int>; key_type = HashObject<256, 256>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; data_type = int; key_type = HashObject<256, 256>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:724:66: required from here
724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<256, 256>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<256, 256>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; reference = std::pair<HashObject<4, 4>* const, int>&; size_type = short unsigned int; const_reference = const std::pair<HashObject<4, 4>* const, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; reference = std::pair<HashObject<4, 4>* const, int>&; size_type = long unsigned int; const_reference = const std::pair<HashObject<4, 4>* const, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<HashObject<4, 4>* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; iterator = google::sparse_hashtable_iterator<std::pair<HashObject<4, 4>* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SelectKey, google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SetKey, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >; const_reference = const std::pair<HashObject<4, 4>* const, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::DefaultValue; Value = std::pair<HashObject<4, 4>* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; value_type = std::pair<HashObject<4, 4>* const, int>; key_type = HashObject<4, 4>*]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<4, 4>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; data_type = int; key_type = HashObject<4, 4>*]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:633:12: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
633 | set[reinterpret_cast<typename MapType::key_type>(key)]
| ~~~^
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:721:60: required from here
721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<4, 4>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<4, 4>* const, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; reference = std::pair<HashObject<8, 8>* const, int>&; size_type = short unsigned int; const_reference = const std::pair<HashObject<8, 8>* const, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; reference = std::pair<HashObject<8, 8>* const, int>&; size_type = long unsigned int; const_reference = const std::pair<HashObject<8, 8>* const, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<HashObject<8, 8>* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; iterator = google::sparse_hashtable_iterator<std::pair<HashObject<8, 8>* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SelectKey, google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SetKey, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >; const_reference = const std::pair<HashObject<8, 8>* const, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::DefaultValue; Value = std::pair<HashObject<8, 8>* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; value_type = std::pair<HashObject<8, 8>* const, int>; key_type = HashObject<8, 8>*]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<8, 8>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; data_type = int; key_type = HashObject<8, 8>*]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:633:12: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
633 | set[reinterpret_cast<typename MapType::key_type>(key)]
| ~~~^
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:722:60: required from here
722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<8, 8>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<8, 8>* const, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; reference = std::pair<HashObject<16, 16>* const, int>&; size_type = short unsigned int; const_reference = const std::pair<HashObject<16, 16>* const, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; reference = std::pair<HashObject<16, 16>* const, int>&; size_type = long unsigned int; const_reference = const std::pair<HashObject<16, 16>* const, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<HashObject<16, 16>* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; iterator = google::sparse_hashtable_iterator<std::pair<HashObject<16, 16>* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SelectKey, google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SetKey, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >; const_reference = const std::pair<HashObject<16, 16>* const, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::DefaultValue; Value = std::pair<HashObject<16, 16>* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; value_type = std::pair<HashObject<16, 16>* const, int>; key_type = HashObject<16, 16>*]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<16, 16>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; data_type = int; key_type = HashObject<16, 16>*]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:633:12: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
633 | set[reinterpret_cast<typename MapType::key_type>(key)]
| ~~~^
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:723:63: required from here
723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<16, 16>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<16, 16>* const, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; reference = std::pair<HashObject<256, 256>* const, int>&; size_type = short unsigned int; const_reference = const std::pair<HashObject<256, 256>* const, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; reference = std::pair<HashObject<256, 256>* const, int>&; size_type = long unsigned int; const_reference = const std::pair<HashObject<256, 256>* const, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<HashObject<256, 256>* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; iterator = google::sparse_hashtable_iterator<std::pair<HashObject<256, 256>* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SelectKey, google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SetKey, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >; const_reference = const std::pair<HashObject<256, 256>* const, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::DefaultValue; Value = std::pair<HashObject<256, 256>* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; value_type = std::pair<HashObject<256, 256>* const, int>; key_type = HashObject<256, 256>*]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<256, 256>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; data_type = int; key_type = HashObject<256, 256>*]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:633:12: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
633 | set[reinterpret_cast<typename MapType::key_type>(key)]
| ~~~^
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:724:66: required from here
724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<256, 256>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<256, 256>* const, int>’ declared here
284 | struct pair
| ^~~~
In file included from ./src/sparsehash/internal/densehashtable.h:101,
from ./src/sparsehash/dense_hash_map:104,
from src/time_hash_map.cc:86:
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::pair<const HashObject<4, 4>, int>; pointer = std::pair<const HashObject<4, 4>, int>*; size_type = long unsigned int]’:
./src/sparsehash/sparsetable:1316:40: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::pair<const HashObject<4, 4>, int>; T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; pointer = std::pair<const HashObject<4, 4>, int>*; size_type = long unsigned int]’
1316 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/sparsetable:1087:36: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’
1087 | group = settings.realloc_or_die(group, settings.num_buckets+1);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; reference = std::pair<const HashObject<4, 4>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<4, 4>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; reference = std::pair<const HashObject<4, 4>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<4, 4>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<4, 4>, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<4, 4>, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey, google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >; const_reference = const std::pair<const HashObject<4, 4>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::DefaultValue; Value = std::pair<const HashObject<4, 4>, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; value_type = std::pair<const HashObject<4, 4>, int>; key_type = HashObject<4, 4>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; data_type = int; key_type = HashObject<4, 4>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:721:60: required from here
721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct std::pair<const HashObject<4, 4>, int>’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<4, 4>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::pair<const HashObject<8, 8>, int>; pointer = std::pair<const HashObject<8, 8>, int>*; size_type = long unsigned int]’:
./src/sparsehash/sparsetable:1316:40: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::pair<const HashObject<8, 8>, int>; T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; pointer = std::pair<const HashObject<8, 8>, int>*; size_type = long unsigned int]’
1316 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/sparsetable:1087:36: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’
1087 | group = settings.realloc_or_die(group, settings.num_buckets+1);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; reference = std::pair<const HashObject<8, 8>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<8, 8>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; reference = std::pair<const HashObject<8, 8>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<8, 8>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<8, 8>, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<8, 8>, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey, google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >; const_reference = const std::pair<const HashObject<8, 8>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::DefaultValue; Value = std::pair<const HashObject<8, 8>, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; value_type = std::pair<const HashObject<8, 8>, int>; key_type = HashObject<8, 8>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; data_type = int; key_type = HashObject<8, 8>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:722:60: required from here
722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct std::pair<const HashObject<8, 8>, int>’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<8, 8>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::pair<const HashObject<16, 16>, int>; pointer = std::pair<const HashObject<16, 16>, int>*; size_type = long unsigned int]’:
./src/sparsehash/sparsetable:1316:40: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::pair<const HashObject<16, 16>, int>; T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; pointer = std::pair<const HashObject<16, 16>, int>*; size_type = long unsigned int]’
1316 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/sparsetable:1087:36: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’
1087 | group = settings.realloc_or_die(group, settings.num_buckets+1);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; reference = std::pair<const HashObject<16, 16>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<16, 16>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; reference = std::pair<const HashObject<16, 16>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<16, 16>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<16, 16>, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<16, 16>, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey, google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >; const_reference = const std::pair<const HashObject<16, 16>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::DefaultValue; Value = std::pair<const HashObject<16, 16>, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; value_type = std::pair<const HashObject<16, 16>, int>; key_type = HashObject<16, 16>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; data_type = int; key_type = HashObject<16, 16>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:723:63: required from here
723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct std::pair<const HashObject<16, 16>, int>’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<16, 16>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::pair<const HashObject<256, 256>, int>; pointer = std::pair<const HashObject<256, 256>, int>*; size_type = long unsigned int]’:
./src/sparsehash/sparsetable:1316:40: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::pair<const HashObject<256, 256>, int>; T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; pointer = std::pair<const HashObject<256, 256>, int>*; size_type = long unsigned int]’
1316 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/sparsetable:1087:36: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’
1087 | group = settings.realloc_or_die(group, settings.num_buckets+1);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; reference = std::pair<const HashObject<256, 256>, int>&; size_type = short unsigned int; const_reference = const std::pair<const HashObject<256, 256>, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; reference = std::pair<const HashObject<256, 256>, int>&; size_type = long unsigned int; const_reference = const std::pair<const HashObject<256, 256>, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const HashObject<256, 256>, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const HashObject<256, 256>, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey, google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >; const_reference = const std::pair<const HashObject<256, 256>, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::DefaultValue; Value = std::pair<const HashObject<256, 256>, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; value_type = std::pair<const HashObject<256, 256>, int>; key_type = HashObject<256, 256>]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; data_type = int; key_type = HashObject<256, 256>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:724:66: required from here
724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct std::pair<const HashObject<256, 256>, int>’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<256, 256>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<4, 4>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<4, 4>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const HashObject<4, 4>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const HashObject<4, 4>, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::DefaultValue; Value = std::pair<const HashObject<4, 4>, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>, int, HashFn, std::equal_to<HashObject<4, 4> >, google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; value_type = std::pair<const HashObject<4, 4>, int>; key_type = HashObject<4, 4>]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<4, 4> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<4, 4>, int> >; data_type = int; key_type = HashObject<4, 4>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:721:60: required from here
721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<4, 4>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<4, 4>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<8, 8>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<8, 8>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const HashObject<8, 8>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const HashObject<8, 8>, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::DefaultValue; Value = std::pair<const HashObject<8, 8>, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>, int, HashFn, std::equal_to<HashObject<8, 8> >, google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; value_type = std::pair<const HashObject<8, 8>, int>; key_type = HashObject<8, 8>]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<8, 8> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<8, 8>, int> >; data_type = int; key_type = HashObject<8, 8>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:722:60: required from here
722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<8, 8>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<8, 8>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<16, 16>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<16, 16>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const HashObject<16, 16>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const HashObject<16, 16>, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::DefaultValue; Value = std::pair<const HashObject<16, 16>, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>, int, HashFn, std::equal_to<HashObject<16, 16> >, google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; value_type = std::pair<const HashObject<16, 16>, int>; key_type = HashObject<16, 16>]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<16, 16> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<16, 16>, int> >; data_type = int; key_type = HashObject<16, 16>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:723:63: required from here
723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<16, 16>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<16, 16>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<256, 256>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const HashObject<256, 256>, int>, 48, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const HashObject<256, 256>, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const HashObject<256, 256>, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::DefaultValue; Value = std::pair<const HashObject<256, 256>, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>, int, HashFn, std::equal_to<HashObject<256, 256> >, google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; value_type = std::pair<const HashObject<256, 256>, int>; key_type = HashObject<256, 256>]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<256, 256> >; Alloc = google::libc_allocator_with_realloc<std::pair<const HashObject<256, 256>, int> >; data_type = int; key_type = HashObject<256, 256>]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/time_hash_map.cc:434:8: required from ‘void time_map_grow(int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>]’
434 | set[i] = i+1;
| ~~~^
src/time_hash_map.cc:658:32: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
658 | if (1) time_map_grow<MapType>(iters);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:724:66: required from here
724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const HashObject<256, 256>, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const HashObject<256, 256>, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<4, 4>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<4, 4>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<HashObject<4, 4>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<HashObject<4, 4>* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<4, 4>*, int, HashFn, std::equal_to<HashObject<4, 4>*>, google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<4, 4>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/sparse_hash_map:235:51: required from ‘void google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<4, 4>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<4, 4>* const, int> >; size_type = long unsigned int]’
235 | void resize(size_type hint) { rep.resize(hint); }
| ~~~~~~~~~~^~~~~~
src/time_hash_map.cc:620:15: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
620 | set.resize(map_size);
| ~~~~~~~~~~^~~~~~~~~~
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<4, 4>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<4, 4>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:721:60: required from here
721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<4, 4>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<4, 4>* const, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<8, 8>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<8, 8>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<HashObject<8, 8>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<HashObject<8, 8>* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<8, 8>*, int, HashFn, std::equal_to<HashObject<8, 8>*>, google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<8, 8>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/sparse_hash_map:235:51: required from ‘void google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<8, 8>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<8, 8>* const, int> >; size_type = long unsigned int]’
235 | void resize(size_type hint) { rep.resize(hint); }
| ~~~~~~~~~~^~~~~~
src/time_hash_map.cc:620:15: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
620 | set.resize(map_size);
| ~~~~~~~~~~^~~~~~~~~~
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<8, 8>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<8, 8>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:722:60: required from here
722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<8, 8>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<8, 8>* const, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<16, 16>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<16, 16>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<HashObject<16, 16>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<HashObject<16, 16>* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<16, 16>*, int, HashFn, std::equal_to<HashObject<16, 16>*>, google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<16, 16>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/sparse_hash_map:235:51: required from ‘void google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<16, 16>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<16, 16>* const, int> >; size_type = long unsigned int]’
235 | void resize(size_type hint) { rep.resize(hint); }
| ~~~~~~~~~~^~~~~~
src/time_hash_map.cc:620:15: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
620 | set.resize(map_size);
| ~~~~~~~~~~^~~~~~~~~~
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<16, 16>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<16, 16>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:723:63: required from here
723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<16, 16>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<16, 16>* const, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<256, 256>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<HashObject<256, 256>* const, int>, 48, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<HashObject<256, 256>* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<HashObject<256, 256>* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SelectKey; SetKey = google::sparse_hash_map<HashObject<256, 256>*, int, HashFn, std::equal_to<HashObject<256, 256>*>, google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> > >::SetKey; EqualKey = std::equal_to<HashObject<256, 256>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
./src/sparsehash/sparse_hash_map:235:51: required from ‘void google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to<HashObject<256, 256>*>; Alloc = google::libc_allocator_with_realloc<std::pair<HashObject<256, 256>* const, int> >; size_type = long unsigned int]’
235 | void resize(size_type hint) { rep.resize(hint); }
| ~~~~~~~~~~^~~~~~
src/time_hash_map.cc:620:15: required from ‘void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
620 | set.resize(map_size);
| ~~~~~~~~~~^~~~~~~~~~
src/time_hash_map.cc:649:34: required from ‘void stresshashfunction(int) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
649 | stresshashfunction<MapType>(num_inserts, map_size, stride);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:673:38: required from ‘void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap<HashObject<256, 256>, int, HashFn>; StressMapType = EasyUseSparseHashMap<HashObject<256, 256>*, int, HashFn>]’
673 | stresshashfunction<StressMapType>(iters / 4);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
src/time_hash_map.cc:683:63: required from ‘void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]’
682 | measure_map< EasyUseSparseHashMap<ObjType, int, HashFn>,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
683 | EasyUseSparseHashMap<ObjType*, int, HashFn> >(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/time_hash_map.cc:724:66: required from here
724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<HashObject<256, 256>* const, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<HashObject<256, 256>* const, int>’ declared here
284 | struct pair
| ^~~~
In file included from src/hashtable_test.cc:62:
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; reference = std::pair<const int, int>&; size_type = short unsigned int; const_reference = const std::pair<const int, int>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; reference = std::pair<const int, int>&; size_type = long unsigned int; const_reference = const std::pair<const int, int>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::sparse_hashtable_iterator<std::pair<const int, int>, int, std::hash<int>, google::sparse_hash_map<int, int>::SelectKey, google::sparse_hash_map<int, int>::SetKey, std::equal_to<int>, google::libc_allocator_with_realloc<std::pair<const int, int> > >; const_reference = const std::pair<const int, int>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, int>::DefaultValue; Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; value_type = std::pair<const int, int>; key_type = int]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash<int>; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; data_type = int; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/hashtable_test.cc:634:9: required from here
634 | ht[1] = 2;
| ^
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_algobase.h:64,
from /usr/include/c++/14/bits/specfun.h:43,
from /usr/include/c++/14/cmath:3898,
from /usr/include/c++/14/math.h:36,
from src/hashtable_test.cc:49:
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, int>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; reference = std::pair<const int, {anonymous}::Memmove>&; size_type = short unsigned int; const_reference = const std::pair<const int, {anonymous}::Memmove>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; reference = std::pair<const int, {anonymous}::Memmove>&; size_type = long unsigned int; const_reference = const std::pair<const int, {anonymous}::Memmove>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; iterator = google::sparse_hashtable_iterator<std::pair<const int, {anonymous}::Memmove>, int, {anonymous}::Hasher, google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey, google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> > >; const_reference = const std::pair<const int, {anonymous}::Memmove>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::DefaultValue; Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; value_type = std::pair<const int, {anonymous}::Memmove>; key_type = int]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; data_type = {anonymous}::Memmove; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/hashtable_test.cc:1777:14: required from here
1777 | memmove[i] = Memmove(i);
| ^
./src/sparsehash/sparsetable:1091:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, {anonymous}::Memmove>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1091 | memcpy(group + i, group + i-1, sizeof(*group));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, {anonymous}::Memmove>’ declared here
284 | struct pair
| ^~~~
In file included from ./src/sparsehash/sparsetable:247:
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::pair<const int, {anonymous}::DenseIntMap<int> >; pointer = std::pair<const int, {anonymous}::DenseIntMap<int> >*; size_type = long unsigned int]’:
./src/sparsehash/internal/densehashtable.h:1196:40: required from ‘google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::pair<const int, {anonymous}::DenseIntMap<int> >; Value = std::pair<const int, {anonymous}::DenseIntMap<int> >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::DenseIntMap<int> > >; pointer = std::pair<const int, {anonymous}::DenseIntMap<int> >*; size_type = long unsigned int]’
1196 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/internal/densehashtable.h:622:36: required from ‘void google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::resize_table(size_type, size_type, google::true_type) [with Value = std::pair<const int, {anonymous}::DenseIntMap<int> >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::DenseIntMap<int> > >; size_type = long unsigned int; google::true_type = google::integral_constant<bool, true>]’
622 | table = val_info.realloc_or_die(table, new_size);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
./src/sparsehash/internal/densehashtable.h:779:21: required from ‘void google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::clear_to_size(size_type) [with Value = std::pair<const int, {anonymous}::DenseIntMap<int> >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::DenseIntMap<int> > >; size_type = long unsigned int]’
779 | resize_table(num_buckets, new_num_buckets, realloc_ok());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/densehashtable.h:632:5: required from ‘void google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::copy_from(const google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, {anonymous}::DenseIntMap<int> >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::DenseIntMap<int> > >; size_type = long unsigned int]’
632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted));
| ^~~~~~~~~~~~~
./src/sparsehash/internal/densehashtable.h:723:5: required from ‘google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::dense_hashtable(const google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, {anonymous}::DenseIntMap<int> >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map<int, {anonymous}::DenseIntMap<int>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::DenseIntMap<int> > >; size_type = long unsigned int]’
723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries
| ^~~~~~~~~
./src/sparsehash/dense_hash_map:113:7: required from here
113 | class dense_hash_map {
| ^~~~~~~~~~~~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct std::pair<const int, {anonymous}::DenseIntMap<int> >’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, {anonymous}::DenseIntMap<int> >’ declared here
284 | struct pair
| ^~~~
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o simple_compat_test simple_compat_test.o
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, int>, 48, google::libc_allocator_with_realloc<std::pair<const int, int> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, int>, 48, google::libc_allocator_with_realloc<std::pair<const int, int> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1706:5: required from ‘bool google::sparsetable<T, GROUP_SIZE, Alloc>::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair<const int, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >]’
1706 | resize(settings.table_size); // so the vector's sized ok
| ^~~~~~
./src/sparsehash/internal/sparsehashtable.h:1114:44: required from ‘bool google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair<const int, int>; Key = int; HashFcn = std::hash<int>; ExtractKey = google::sparse_hash_map<int, int>::SelectKey; SetKey = google::sparse_hash_map<int, int>::SetKey; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >]’
1114 | const bool result = table.read_metadata(fp);
| ~~~~~~~~~~~~~~~~~~~^~~~
./src/sparsehash/sparse_hash_map:345:67: required from ‘bool google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash<int>; EqualKey = std::equal_to<int>; Alloc = google::libc_allocator_with_realloc<std::pair<const int, int> >]’
345 | bool read_metadata(INPUT *fp) { return rep.read_metadata(fp); }
| ~~~~~~~~~~~~~~~~~^~~~
src/hashtable_test.cc:1451:3: required from here
1451 | EXPECT_TRUE(ht_in.read_metadata(fp));
| ~~~~~~~~~~~~~~~~~~~^~~~
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, int>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, int>’ declared here
284 | struct pair
| ^~~~
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o simple_test simple_test.o
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::pair<const int, {anonymous}::Memmove>; pointer = std::pair<const int, {anonymous}::Memmove>*; size_type = long unsigned int]’:
./src/sparsehash/sparsetable:1316:40: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::sparsegroup<T, GROUP_SIZE, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::pair<const int, {anonymous}::Memmove>; T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; pointer = std::pair<const int, {anonymous}::Memmove>*; size_type = long unsigned int]’
1316 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/sparsetable:1087:36: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::set_aux(size_type, google::true_type) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’
1087 | group = settings.realloc_or_die(group, settings.num_buckets+1);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1123:14: required from ‘google::sparsegroup<T, GROUP_SIZE, Alloc>::reference google::sparsegroup<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; reference = std::pair<const int, {anonymous}::Memmove>&; size_type = short unsigned int; const_reference = const std::pair<const int, {anonymous}::Memmove>&]’
1123 | set_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1608:42: required from ‘google::sparsetable<T, GROUP_SIZE, Alloc>::reference google::sparsetable<T, GROUP_SIZE, Alloc>::set(size_type, const_reference) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; reference = std::pair<const int, {anonymous}::Memmove>&; size_type = long unsigned int; const_reference = const std::pair<const int, {anonymous}::Memmove>&]’
1608 | reference retval = which_group(i).set(pos_in_group(i), val);
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:935:14: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::iterator google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_at(const_reference, size_type) [with Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; iterator = google::sparse_hashtable_iterator<std::pair<const int, {anonymous}::Memmove>, int, {anonymous}::Hasher, google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey, google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> > >; const_reference = const std::pair<const int, {anonymous}::Memmove>&; size_type = long unsigned int]’
935 | table.set(pos, obj);
| ~~~~~~~~~^~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:1005:15: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::DefaultValue; Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; value_type = std::pair<const int, {anonymous}::Memmove>; key_type = int]’
1005 | return *insert_at(default_value(key), pos.second);
| ^~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; data_type = {anonymous}::Memmove; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/hashtable_test.cc:1777:14: required from here
1777 | memmove[i] = Memmove(i);
| ^
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct std::pair<const int, {anonymous}::Memmove>’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, {anonymous}::Memmove>’ declared here
284 | struct pair
| ^~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of ‘T* google::libc_allocator_with_realloc<T>::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string<char>; pointer = std::__cxx11::basic_string<char>*; size_type = long unsigned int]’:
./src/sparsehash/internal/densehashtable.h:1196:40: required from ‘google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::pointer google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::alloc_impl<google::libc_allocator_with_realloc<U> >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; pointer = std::__cxx11::basic_string<char>*; size_type = long unsigned int]’
1196 | pointer retval = this->reallocate(ptr, n);
| ~~~~~~~~~~~~~~~~^~~~~~~~
./src/sparsehash/internal/densehashtable.h:622:36: required from ‘void google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; size_type = long unsigned int; google::true_type = google::integral_constant<bool, true>]’
622 | table = val_info.realloc_or_die(table, new_size);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
./src/sparsehash/internal/densehashtable.h:779:21: required from ‘void google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::clear_to_size(size_type) [with Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; size_type = long unsigned int]’
779 | resize_table(num_buckets, new_num_buckets, realloc_ok());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/densehashtable.h:632:5: required from ‘void google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::copy_from(const google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; size_type = long unsigned int]’
632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted));
| ^~~~~~~~~~~~~
./src/sparsehash/internal/densehashtable.h:723:5: required from ‘google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::dense_hashtable(const google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; size_type = long unsigned int]’
723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries
| ^~~~~~~~~
./src/sparsehash/internal/densehashtable.h:614:21: required from ‘bool google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::resize_delta(size_type) [with Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; size_type = long unsigned int]’
614 | dense_hashtable tmp(*this, resize_to);
| ^~~
./src/sparsehash/internal/densehashtable.h:967:5: required from ‘std::pair<google::dense_hashtable_iterator<V, K, HF, ExK, SetK, EqK, A>, bool> google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert(const_reference) [with Value = std::__cxx11::basic_string<char>; Key = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; const_reference = const std::__cxx11::basic_string<char>&]’
967 | resize_delta(1); // adding an object, grow if need be
| ^~~~~~~~~~~~
./src/sparsehash/dense_hash_set:255:58: required from ‘std::pair<typename google::dense_hashtable<Value, Value, HashFcn, google::dense_hash_set<Value, HashFcn, EqualKey, Alloc>::Identity, google::dense_hash_set<Value, HashFcn, EqualKey, Alloc>::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set<Value, HashFcn, EqualKey, Alloc>::insert(const value_type&) [with Value = std::__cxx11::basic_string<char>; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >; typename google::dense_hashtable<Value, Value, HashFcn, Identity, SetKey, EqualKey, Alloc>::const_iterator = google::dense_hashtable_const_iterator<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, {anonymous}::Hasher, google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set<std::__cxx11::basic_string<char>, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> > >; value_type = std::__cxx11::basic_string<char>]’
255 | std::pair<typename ht::iterator, bool> p = rep.insert(obj);
| ~~~~~~~~~~^~~~~
src/hashtable_test.cc:1903:19: required from here
1903 | ht2["hi"].insert("lo");
| ~~~~~~~~~~~~~~~~^~~~~~
./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘class std::__cxx11::basic_string<char>’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
68 | return static_cast<pointer>(realloc(p, n * sizeof(value_type)));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:54,
from /usr/include/c++/14/bits/locale_classes.h:40,
from /usr/include/c++/14/bits/ios_base.h:41,
from /usr/include/c++/14/ios:44,
from /usr/include/c++/14/ostream:40,
from /usr/include/c++/14/iostream:41,
from src/hashtable_test.cc:56:
/usr/include/c++/14/bits/basic_string.h:86:11: note: ‘class std::__cxx11::basic_string<char>’ declared here
86 | class basic_string
| ^~~~~~~~~~~~
./src/sparsehash/sparsetable: In instantiation of ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase_aux(size_type, google::true_type) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = short unsigned int; google::true_type = google::integral_constant<bool, true>]’:
./src/sparsehash/sparsetable:1192:18: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(size_type) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = short unsigned int]’
1192 | erase_aux(offset, realloc_and_memmove_ok());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1200:10: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, {anonymous}::Memmove>, 48, google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> > > >]’
1200 | erase(pos.pos);
| ~~~~~^~~~~~~~~
./src/sparsehash/sparsetable:1207:12: required from ‘void google::sparsegroup<T, GROUP_SIZE, Alloc>::erase(iterator, iterator) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; iterator = google::table_iterator<google::sparsegroup<std::pair<const int, {anonymous}::Memmove>, 48, google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> > > >]’
1207 | erase(start_it);
| ~~~~~^~~~~~~~~~
./src/sparsehash/sparsetable:1517:28: required from ‘void google::sparsetable<T, GROUP_SIZE, Alloc>::resize(size_type) [with T = std::pair<const int, {anonymous}::Memmove>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = long unsigned int]’
1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size),
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1518 | groups.back().end());
| ~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:706:19: required from ‘void google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::move_from(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = long unsigned int]’
706 | table.resize(resize_to); // sets the number of buckets
| ~~~~~~~~~~~~^~~~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:797:5: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>&, size_type) [with Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = long unsigned int]’
797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries
| ^~~~~~~~~
./src/sparsehash/internal/sparsehashtable.h:655:22: required from ‘bool google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::resize_delta(size_type) [with Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; size_type = long unsigned int]’
655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to);
| ^~~
./src/sparsehash/internal/sparsehashtable.h:1001:16: required from ‘google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::value_type& google::sparse_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::DefaultValue; Value = std::pair<const int, {anonymous}::Memmove>; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::sparse_hash_map<int, {anonymous}::Memmove, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; value_type = std::pair<const int, {anonymous}::Memmove>; key_type = int]’
1001 | } else if (resize_delta(1)) { // needed to rehash to make room
| ^~~~~~~~~~~~
./src/sparsehash/sparse_hash_map:246:53: required from ‘google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::data_type& google::sparse_hash_map<Key, T, HashFcn, EqualKey, Alloc>::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc<std::pair<const int, {anonymous}::Memmove> >; data_type = {anonymous}::Memmove; key_type = int]’
246 | return rep.template find_or_insert<DefaultValue>(key).second;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
src/hashtable_test.cc:1777:14: required from here
1777 | memmove[i] = Memmove(i);
| ^
./src/sparsehash/sparsetable:1157:13: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<const int, {anonymous}::Memmove>’ with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess]
1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined!
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_pair.h:284:12: note: ‘struct std::pair<const int, {anonymous}::Memmove>’ declared here
284 | struct pair
| ^~~~
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o time_hash_map time_hash_map-time_hash_map.o
g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wl,-z,relro -o hashtable_test hashtable_test.o
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_test
make -j8 check "TESTSUITEFLAGS=-j8 --verbose" VERBOSE=1
make[1]: Entering directory '/<<PKGBUILDDIR>>'
make check-am
make[2]: Entering directory '/<<PKGBUILDDIR>>'
make
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make all-am
make[4]: Entering directory '/<<PKGBUILDDIR>>'
make[4]: Leaving directory '/<<PKGBUILDDIR>>'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make check-TESTS
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make[4]: Entering directory '/<<PKGBUILDDIR>>'
PASS: template_util_unittest
PASS: type_traits_unittest
PASS: libc_allocator_with_realloc_test
PASS: simple_test
PASS: simple_compat_test
PASS: sparsetable_unittest
PASS: hashtable_test
============================================================================
Testsuite summary for sparsehash 2.0.3
============================================================================
# TOTAL: 7
# PASS: 7
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
make[4]: Leaving directory '/<<PKGBUILDDIR>>'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
create-stamp debian/debhelper-build-stamp
dh_prep
rm -f -- debian/libsparsehash-dev.substvars
rm -fr -- debian/.debhelper/generated/libsparsehash-dev/ debian/libsparsehash-dev/ debian/tmp/
dh_installdirs
install -m0755 -d debian/libsparsehash-dev
install -m0755 -d debian/libsparsehash-dev/usr/include debian/libsparsehash-dev/usr/include/google
debian/rules override_dh_auto_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_install
install -m0755 -d debian/libsparsehash-dev
make -j8 install DESTDIR=/<<PKGBUILDDIR>>/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no
make[2]: Entering directory '/<<PKGBUILDDIR>>'
make install-am
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make[4]: Entering directory '/<<PKGBUILDDIR>>'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/google'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/google/sparsehash'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/sparsehash/internal'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/pkgconfig'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/sparsehash'
/usr/bin/install -c -m 644 AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt TODO doc/dense_hash_map.html doc/dense_hash_set.html doc/sparse_hash_map.html doc/sparse_hash_set.html doc/sparsetable.html doc/implementation.html doc/performance.html doc/index.html doc/designstyle.css '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev'
/usr/bin/install -c -m 644 src/google/sparsehash/densehashtable.h src/google/sparsehash/sparsehashtable.h src/google/sparsehash/hashtable-common.h src/google/sparsehash/libc_allocator_with_realloc.h '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/google/sparsehash'
/usr/bin/install -c -m 644 src/sparsehash/internal/densehashtable.h src/sparsehash/internal/sparsehashtable.h src/sparsehash/internal/hashtable-common.h src/sparsehash/internal/libc_allocator_with_realloc.h '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/sparsehash/internal'
/usr/bin/install -c -m 644 src/google/dense_hash_map src/google/dense_hash_set src/google/sparse_hash_map src/google/sparse_hash_set src/google/sparsetable src/google/template_util.h src/google/type_traits.h '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/google'
/usr/bin/mkdir -p '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/sparsehash/internal'
/usr/bin/install -c -m 644 src/sparsehash/dense_hash_map src/sparsehash/dense_hash_set src/sparsehash/sparse_hash_map src/sparsehash/sparse_hash_set src/sparsehash/sparsetable src/sparsehash/template_util.h src/sparsehash/type_traits.h '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/sparsehash'
/usr/bin/install -c -m 644 libsparsehash.pc '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/pkgconfig'
/usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/include/sparsehash/internal'
make[4]: Leaving directory '/<<PKGBUILDDIR>>'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
# Check to make sure pkg-config script version matches actual package version
export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/pkgconfig/libsparsehash.pc | cut -f2 -d' ') ; \
[ "2.0.3" = "$PKG_CONFIG_SCRIPT_VERSION" ] || \
(echo "debian/changelog upstream version '2.0.3' does not match .pc script version '$PKG_CONFIG_SCRIPT_VERSION'"; exit 1)
# Fix upstream doc install locations
install -d /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html
mv /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/
mv /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/
rm -f /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog
rm -f /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING
rm -f /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL
rm -f /<<PKGBUILDDIR>>/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_installdocs
install -p -m0644 debian/copyright debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/copyright
install -m0755 -d debian/libsparsehash-dev/usr/share/doc-base/
install -p -m0644 debian/libsparsehash-dev.doc-base debian/libsparsehash-dev/usr/share/doc-base/libsparsehash-dev.sparsehash
dh_installchangelogs
install -m0755 -d debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev
install -p -m0644 debian/.debhelper/generated/libsparsehash-dev/dh_installchangelogs.dch.trimmed debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog.Debian
install -p -m0644 ./ChangeLog debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog
dh_perl
dh_link
dh_strip_nondeterminism
dh_compress
cd debian/libsparsehash-dev
chmod a-x usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian
gzip -9nf usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian
cd '/<<PKGBUILDDIR>>'
dh_fixperms
find debian/libsparsehash-dev ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s
find debian/libsparsehash-dev/usr/share/doc -type f -a -true -a ! -regex 'debian/libsparsehash-dev/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644
find debian/libsparsehash-dev/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755
find debian/libsparsehash-dev/usr/include -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
find debian/libsparsehash-dev -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
dh_missing
dh_installdeb
install -m0755 -d debian/libsparsehash-dev/DEBIAN
dh_gencontrol
install -m0755 -d debian/libsparsehash-dev/DEBIAN
echo misc:Depends= >> debian/libsparsehash-dev.substvars
echo misc:Pre-Depends= >> debian/libsparsehash-dev.substvars
dpkg-gencontrol -plibsparsehash-dev -ldebian/changelog -Tdebian/libsparsehash-dev.substvars -cdebian/control -Pdebian/libsparsehash-dev
chmod 0644 -- debian/libsparsehash-dev/DEBIAN/control
dh_md5sums
install -m0755 -d debian/libsparsehash-dev/DEBIAN
cd debian/libsparsehash-dev >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums
chmod 0644 -- debian/libsparsehash-dev/DEBIAN/md5sums
dh_builddeb
dpkg-deb --root-owner-group --build debian/libsparsehash-dev ..
dpkg-deb: building package 'libsparsehash-dev' in '../libsparsehash-dev_2.0.3-2_all.deb'.
dpkg-genbuildinfo --build=binary -O../sparsehash_2.0.3-2_arm64.buildinfo
dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_arm64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
dpkg-source --after-build .
dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2024-11-18T15:30:06Z
Finished
--------
I: Built successfully
+------------------------------------------------------------------------------+
| Changes |
+------------------------------------------------------------------------------+
sparsehash_2.0.3-2_arm64.changes:
---------------------------------
Format: 1.8
Date: Fri, 24 Apr 2020 23:16:17 -0400
Source: sparsehash
Binary: libsparsehash-dev
Architecture: all
Version: 2.0.3-2
Distribution: sid
Urgency: medium
Maintainer: Athena Capital Research <acr-debian@athenacr.com>
Changed-By: Roberto C. Sanchez <roberto@connexer.com>
Description:
libsparsehash-dev - Google's extremely memory-efficient C++ hash_map implementation
Changes:
sparsehash (2.0.3-2) unstable; urgency=medium
.
* Update to Standards-Version 4.5.0 (no changes)
Checksums-Sha1:
cf5860b8455c715dc93bbd67f94eeb834852bd92 75920 libsparsehash-dev_2.0.3-2_all.deb
a2020ec80de03d60f4fc1b8f553a1e2051a7ebb4 4606 sparsehash_2.0.3-2_arm64.buildinfo
Checksums-Sha256:
3f26eea01f370f133fe2fccb3715c209f058f734587578192798cb9f59c3abec 75920 libsparsehash-dev_2.0.3-2_all.deb
a32a1821b305c5029c8d3922c6d505cae8b04eb24a12259872885725a4c2fc09 4606 sparsehash_2.0.3-2_arm64.buildinfo
Files:
026cbb770736909305fb71b588c6fe2f 75920 libdevel optional libsparsehash-dev_2.0.3-2_all.deb
3e30bc472c9aba00029b2b2c9e3db48f 4606 libdevel optional sparsehash_2.0.3-2_arm64.buildinfo
+------------------------------------------------------------------------------+
| Buildinfo |
+------------------------------------------------------------------------------+
Format: 1.0
Source: sparsehash
Binary: libsparsehash-dev
Architecture: all
Version: 2.0.3-2
Checksums-Md5:
026cbb770736909305fb71b588c6fe2f 75920 libsparsehash-dev_2.0.3-2_all.deb
Checksums-Sha1:
cf5860b8455c715dc93bbd67f94eeb834852bd92 75920 libsparsehash-dev_2.0.3-2_all.deb
Checksums-Sha256:
3f26eea01f370f133fe2fccb3715c209f058f734587578192798cb9f59c3abec 75920 libsparsehash-dev_2.0.3-2_all.deb
Build-Origin: Debian
Build-Architecture: arm64
Build-Date: Mon, 18 Nov 2024 15:30:06 +0000
Build-Path: /<<PKGBUILDDIR>>
Build-Tainted-By:
merged-usr-via-aliased-dirs
Installed-Build-Depends:
autoconf (= 2.72-3),
automake (= 1:1.16.5-1.3),
autopoint (= 0.22.5-2),
autotools-dev (= 20220109.1),
base-files (= 13.5),
base-passwd (= 3.6.5),
bash (= 5.2.32-1+b2),
binutils (= 2.43.1-5),
binutils-aarch64-linux-gnu (= 2.43.1-5),
binutils-common (= 2.43.1-5),
bsdextrautils (= 2.40.2-11),
bsdutils (= 1:2.40.2-11),
build-essential (= 12.12),
bzip2 (= 1.0.8-6),
coreutils (= 9.5-1+b1),
cpp (= 4:14.2.0-1),
cpp-14 (= 14.2.0-8),
cpp-14-aarch64-linux-gnu (= 14.2.0-8),
cpp-aarch64-linux-gnu (= 4:14.2.0-1),
dash (= 0.5.12-9+b1),
debconf (= 1.5.87),
debhelper (= 13.20),
debianutils (= 5.21),
dh-autoreconf (= 20),
dh-strip-nondeterminism (= 1.14.0-1),
diffutils (= 1:3.10-1+b1),
dpkg (= 1.22.12~1.gbp82cafd),
dpkg-dev (= 1.22.12~1.gbp82cafd),
dwz (= 0.15-1+b1),
file (= 1:5.45-3+b1),
findutils (= 4.10.0-3),
g++ (= 4:14.2.0-1),
g++-14 (= 14.2.0-8),
g++-14-aarch64-linux-gnu (= 14.2.0-8),
g++-aarch64-linux-gnu (= 4:14.2.0-1),
gcc (= 4:14.2.0-1),
gcc-14 (= 14.2.0-8),
gcc-14-aarch64-linux-gnu (= 14.2.0-8),
gcc-14-base (= 14.2.0-8),
gcc-aarch64-linux-gnu (= 4:14.2.0-1),
gettext (= 0.22.5-2),
gettext-base (= 0.22.5-2),
grep (= 3.11-4+b1),
groff-base (= 1.23.0-5),
gzip (= 1.12-1.1+b1),
hostname (= 3.25),
init-system-helpers (= 1.67),
intltool-debian (= 0.35.0+20060710.6),
libacl1 (= 2.3.2-2+b1),
libarchive-zip-perl (= 1.68-1),
libasan8 (= 14.2.0-8),
libatomic1 (= 14.2.0-8),
libattr1 (= 1:2.5.2-2),
libaudit-common (= 1:4.0.2-2),
libaudit1 (= 1:4.0.2-2),
libbinutils (= 2.43.1-5),
libblkid1 (= 2.40.2-11),
libbz2-1.0 (= 1.0.8-6),
libc-bin (= 2.40-3),
libc-dev-bin (= 2.40-3),
libc6 (= 2.40-3),
libc6-dev (= 2.40-3),
libcap-ng0 (= 0.8.5-3+b1),
libcap2 (= 1:2.66-5+b1),
libcc1-0 (= 14.2.0-8),
libcrypt-dev (= 1:4.4.36-5),
libcrypt1 (= 1:4.4.36-5),
libctf-nobfd0 (= 2.43.1-5),
libctf0 (= 2.43.1-5),
libdb5.3t64 (= 5.3.28+dfsg2-9),
libdebconfclient0 (= 0.273),
libdebhelper-perl (= 13.20),
libdpkg-perl (= 1.22.12~1.gbp82cafd),
libelf1t64 (= 0.192-4),
libfile-stripnondeterminism-perl (= 1.14.0-1),
libgcc-14-dev (= 14.2.0-8),
libgcc-s1 (= 14.2.0-8),
libgdbm-compat4t64 (= 1.24-2),
libgdbm6t64 (= 1.24-2),
libgmp10 (= 2:6.3.0+dfsg-2+b2),
libgomp1 (= 14.2.0-8),
libgprofng0 (= 2.43.1-5),
libhwasan0 (= 14.2.0-8),
libicu72 (= 72.1-5+b1),
libisl23 (= 0.27-1),
libitm1 (= 14.2.0-8),
libjansson4 (= 2.14-2+b3),
liblsan0 (= 14.2.0-8),
liblzma5 (= 5.6.3-1+b1),
libmagic-mgc (= 1:5.45-3+b1),
libmagic1t64 (= 1:5.45-3+b1),
libmd0 (= 1.1.0-2+b1),
libmount1 (= 2.40.2-11),
libmpc3 (= 1.3.1-1+b3),
libmpfr6 (= 4.2.1-1+b2),
libpam-modules (= 1.5.3-7+b1),
libpam-modules-bin (= 1.5.3-7+b1),
libpam-runtime (= 1.5.3-7),
libpam0g (= 1.5.3-7+b1),
libpcre2-8-0 (= 10.44-4),
libperl5.40 (= 5.40.0-7),
libpipeline1 (= 1.5.8-1),
libseccomp2 (= 2.5.5-1+b3),
libselinux1 (= 3.7-3+b1),
libsframe1 (= 2.43.1-5),
libsmartcols1 (= 2.40.2-11),
libssl3t64 (= 3.3.2-2),
libstdc++-14-dev (= 14.2.0-8),
libstdc++6 (= 14.2.0-8),
libsystemd0 (= 257~rc2-3),
libtinfo6 (= 6.5-2+b1),
libtool (= 2.4.7-8),
libtsan2 (= 14.2.0-8),
libubsan1 (= 14.2.0-8),
libuchardet0 (= 0.0.8-1+b2),
libudev1 (= 257~rc2-3),
libunistring5 (= 1.2-1+b1),
libuuid1 (= 2.40.2-11),
libxml2 (= 2.12.7+dfsg+really2.9.14-0.2+b1),
libzstd1 (= 1.5.6+dfsg-1+b1),
linux-libc-dev (= 6.11.9-1),
m4 (= 1.4.19-4),
make (= 4.3-4.1+b1),
man-db (= 2.13.0-1),
mawk (= 1.3.4.20240905-1),
ncurses-base (= 6.5-2),
ncurses-bin (= 6.5-2+b1),
openssl-provider-legacy (= 3.3.2-2),
patch (= 2.7.6-7+b1),
perl (= 5.40.0-7),
perl-base (= 5.40.0-7),
perl-modules-5.40 (= 5.40.0-7),
po-debconf (= 1.0.21+nmu1),
rpcsvc-proto (= 1.4.3-1+b1),
sed (= 4.9-2+b1),
sensible-utils (= 0.0.24),
sysvinit-utils (= 3.11-1),
tar (= 1.35+dfsg-3+b1),
util-linux (= 2.40.2-11),
xz-utils (= 5.6.3-1+b1),
zlib1g (= 1:1.3.dfsg+really1.3.1-1+b1)
Environment:
DEB_BUILD_OPTIONS="parallel=8"
LANG="C.UTF-8"
LC_ALL="C.UTF-8"
SOURCE_DATE_EPOCH="1587784577"
+------------------------------------------------------------------------------+
| Package contents |
+------------------------------------------------------------------------------+
libsparsehash-dev_2.0.3-2_all.deb
---------------------------------
new Debian package, version 2.0.
size 75920 bytes: control archive=1784 bytes.
643 bytes, 17 lines control
3238 bytes, 41 lines md5sums
Package: libsparsehash-dev
Source: sparsehash
Version: 2.0.3-2
Architecture: all
Maintainer: Athena Capital Research <acr-debian@athenacr.com>
Installed-Size: 579
Recommends: c++-compiler
Replaces: sparsehash (<< 1.5.2)
Section: libdevel
Priority: optional
Multi-Arch: foreign
Homepage: https://github.com/sparsehash/sparsehash
Description: Google's extremely memory-efficient C++ hash_map implementation
The Google SparseHash project contains several C++ template hash-map
implementations in use at Google, with different performance
characteristics, including an implementation that optimizes for space
and one that optimizes for speed.
drwxr-xr-x root/root 0 2020-04-25 03:16 ./
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/include/
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/include/google/
-rw-r--r-- root/root 1792 2020-04-25 03:16 ./usr/include/google/dense_hash_map
-rw-r--r-- root/root 1792 2020-04-25 03:16 ./usr/include/google/dense_hash_set
-rw-r--r-- root/root 1793 2020-04-25 03:16 ./usr/include/google/sparse_hash_map
-rw-r--r-- root/root 1793 2020-04-25 03:16 ./usr/include/google/sparse_hash_set
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/include/google/sparsehash/
-rw-r--r-- root/root 1803 2020-04-25 03:16 ./usr/include/google/sparsehash/densehashtable.h
-rw-r--r-- root/root 1805 2020-04-25 03:16 ./usr/include/google/sparsehash/hashtable-common.h
-rw-r--r-- root/root 1816 2020-04-25 03:16 ./usr/include/google/sparsehash/libc_allocator_with_realloc.h
-rw-r--r-- root/root 1804 2020-04-25 03:16 ./usr/include/google/sparsehash/sparsehashtable.h
-rw-r--r-- root/root 1789 2020-04-25 03:16 ./usr/include/google/sparsetable
-rw-r--r-- root/root 1793 2020-04-25 03:16 ./usr/include/google/template_util.h
-rw-r--r-- root/root 1791 2020-04-25 03:16 ./usr/include/google/type_traits.h
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/include/sparsehash/
-rw-r--r-- root/root 16003 2020-04-25 03:16 ./usr/include/sparsehash/dense_hash_map
-rw-r--r-- root/root 14643 2020-04-25 03:16 ./usr/include/sparsehash/dense_hash_set
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/include/sparsehash/internal/
-rw-r--r-- root/root 54155 2020-04-25 03:16 ./usr/include/sparsehash/internal/densehashtable.h
-rw-r--r-- root/root 14399 2020-04-25 03:16 ./usr/include/sparsehash/internal/hashtable-common.h
-rw-r--r-- root/root 3915 2020-04-25 03:16 ./usr/include/sparsehash/internal/libc_allocator_with_realloc.h
-rw-r--r-- root/root 1318 2020-04-25 03:16 ./usr/include/sparsehash/internal/sparseconfig.h
-rw-r--r-- root/root 52743 2020-04-25 03:16 ./usr/include/sparsehash/internal/sparsehashtable.h
-rw-r--r-- root/root 15653 2020-04-25 03:16 ./usr/include/sparsehash/sparse_hash_map
-rw-r--r-- root/root 14495 2020-04-25 03:16 ./usr/include/sparsehash/sparse_hash_set
-rw-r--r-- root/root 78126 2020-04-25 03:16 ./usr/include/sparsehash/sparsetable
-rw-r--r-- root/root 4718 2020-04-25 03:16 ./usr/include/sparsehash/template_util.h
-rw-r--r-- root/root 15230 2020-04-25 03:16 ./usr/include/sparsehash/type_traits.h
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/share/
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/share/doc-base/
-rw-r--r-- root/root 279 2020-04-25 03:16 ./usr/share/doc-base/libsparsehash-dev.sparsehash
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/share/doc/
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/
-rw-r--r-- root/root 36 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/AUTHORS
-rw-r--r-- root/root 3315 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/NEWS.gz
-rw-r--r-- root/root 2495 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/README.gz
-rw-r--r-- root/root 1079 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/TODO
-rw-r--r-- root/root 742 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/changelog.Debian.gz
-rw-r--r-- root/root 4663 2015-10-12 21:13 ./usr/share/doc/libsparsehash-dev/changelog.gz
-rw-r--r-- root/root 3089 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/copyright
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/
-rw-r--r-- root/root 48154 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/dense_hash_map.html
-rw-r--r-- root/root 43023 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/dense_hash_set.html
-rw-r--r-- root/root 1992 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/designstyle.css
-rw-r--r-- root/root 15775 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/implementation.html
-rw-r--r-- root/root 2102 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/index.html
-rw-r--r-- root/root 3531 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/performance.html
-rw-r--r-- root/root 47221 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/sparse_hash_map.html
-rw-r--r-- root/root 41864 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/sparse_hash_set.html
-rw-r--r-- root/root 32745 2020-04-25 03:16 ./usr/share/doc/libsparsehash-dev/html/sparsetable.html
drwxr-xr-x root/root 0 2020-04-25 03:16 ./usr/share/pkgconfig/
-rw-r--r-- root/root 226 2020-04-25 03:16 ./usr/share/pkgconfig/libsparsehash.pc
lintian
-------
Setup apt archive
-----------------
Merged Build-Depends: lintian
Filtered Build-Depends: lintian
dpkg-deb: warning: root directory has unusual owner or group 998:999.
Hint: either pass --root-owner-group, see dpkg-build-api(7) or add an explicit 'Rules-Requires-Root: no' in debian/control.
dpkg-deb: warning: ignoring 1 warning about the control file(s)
dpkg-deb: building package 'sbuild-build-depends-lintian-dummy' in '/<<RESOLVERDIR>>/apt_archive/sbuild-build-depends-lintian-dummy.deb'.
Ign:1 copy:/<<RESOLVERDIR>>/apt_archive ./ InRelease
Get:2 copy:/<<RESOLVERDIR>>/apt_archive ./ Release [615 B]
Ign:3 copy:/<<RESOLVERDIR>>/apt_archive ./ Release.gpg
Get:4 copy:/<<RESOLVERDIR>>/apt_archive ./ Sources [1193 B]
Get:5 copy:/<<RESOLVERDIR>>/apt_archive ./ Packages [1255 B]
Fetched 3063 B in 0s (267 kB/s)
Reading package lists...
Get:1 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ InRelease
Ign:1 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ InRelease
Get:2 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release [606 B]
Get:2 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release [606 B]
Get:3 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release.gpg
Ign:3 file:/<<BUILDDIR>>/resolver-bDIphT/apt_archive ./ Release.gpg
Reading package lists...
Reading package lists...
Install lintian build dependencies (apt-based resolver)
-------------------------------------------------------
Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed:
sbuild-build-depends-lintian-dummy
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 856 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<RESOLVERDIR>>/apt_archive ./ sbuild-build-depends-lintian-dummy 0.invalid.0 [856 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 856 B in 0s (0 B/s)
Selecting previously unselected package sbuild-build-depends-lintian-dummy.
(Reading database ... 22541 files and directories currently installed.)
Preparing to unpack .../sbuild-build-depends-lintian-dummy_0.invalid.0_arm64.deb ...
Unpacking sbuild-build-depends-lintian-dummy (0.invalid.0) ...
Setting up sbuild-build-depends-lintian-dummy (0.invalid.0) ...
Running lintian...
W: sparsehash changes: distribution-and-changes-mismatch sid unstable
I: Lintian run was successful.
+------------------------------------------------------------------------------+
| Post Build |
+------------------------------------------------------------------------------+
+------------------------------------------------------------------------------+
| Cleanup |
+------------------------------------------------------------------------------+
Purging /<<BUILDDIR>>
Not cleaning session: cloned chroot in use
+------------------------------------------------------------------------------+
| Summary |
+------------------------------------------------------------------------------+
Build Architecture: arm64
Build Type: binary
Build-Space: 86968
Build-Time: 89
Distribution: sid
Host Architecture: arm64
Install-Time: 17
Job: /tmp/debusine-fetch-exec-upload-3ay14won/sparsehash_2.0.3-2.dsc
Lintian: warn
Machine Architecture: arm64
Package: sparsehash
Package-Time: 142
Source-Version: 2.0.3-2
Space: 86968
Status: successful
Version: 2.0.3-2
--------------------------------------------------------------------------------
Finished at 2024-11-18T15:30:06Z
Build needed 00:02:22, 86968k disk space