Running as unit: rb-build-amd64_28-35160.service ==================================================================================== Mon Sep 30 07:10:08 UTC 2024 - running /srv/jenkins/bin/reproducible_build.sh (for job reproducible_builder_amd64_28) on jenkins, called using "ionos15-amd64 ionos11-amd64" as arguments. Mon Sep 30 07:10:08 UTC 2024 - actually running "reproducible_build.sh" (md5sum 79f74068471242981be9b3b00196cbfb) as "/tmp/jenkins-script-uJfnINMz" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Mon Sep 30 07:10:08 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos15-amd64.debian.net is marked as down. Mon Sep 30 07:10:08 UTC 2024 - checking via ssh if ionos15-amd64.debian.net is up. removed '/tmp/read-only-fs-test-Ba2Syc' Mon Sep 30 07:10:08 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos11-amd64.debian.net is marked as down. Mon Sep 30 07:10:08 UTC 2024 - checking via ssh if ionos11-amd64.debian.net is up. removed '/tmp/read-only-fs-test-E1t8mz' ok, let's check if sparsehash is building anywhere yet… ok, sparsehash is not building anywhere… UPDATE 1 ============================================================================= Initialising reproducibly build of sparsehash in unstable on amd64 on jenkins now. 1st build will be done on ionos15-amd64.debian.net. 2nd build will be done on ionos11-amd64.debian.net. ============================================================================= Mon Sep 30 07:10:15 UTC 2024 I: starting to build sparsehash/unstable/amd64 on jenkins on '2024-09-30 07:10' Mon Sep 30 07:10:15 UTC 2024 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/amd64_28/35160/console.log 1727680215 amd64 unstable sparsehash Mon Sep 30 07:10:15 UTC 2024 I: Downloading source for unstable/sparsehash=2.0.3-2 --2024-09-30 07:10:15-- http://deb.debian.org/debian/pool/main/s/sparsehash/sparsehash_2.0.3-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1818 (1.8K) [text/prs.lines.tag] Saving to: ‘sparsehash_2.0.3-2.dsc’ 0K . 100% 283M=0s 2024-09-30 07:10:15 (283 MB/s) - ‘sparsehash_2.0.3-2.dsc’ saved [1818/1818] --2024-09-30 07:10:15-- http://deb.debian.org/debian/pool/main/s/sparsehash/sparsehash_2.0.3-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1818 (1.8K) [text/prs.lines.tag] Saving to: ‘sparsehash_2.0.3-2.dsc’ 0K . 100% 283M=0s 2024-09-30 07:10:15 (283 MB/s) - ‘sparsehash_2.0.3-2.dsc’ saved [1818/1818] Mon Sep 30 07:10:15 UTC 2024 I: sparsehash_2.0.3-2.dsc -----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 Uploaders: Roberto C. Sanchez 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----- Mon Sep 30 07:10:15 UTC 2024 I: Checking whether the package is not for us Mon Sep 30 07:10:15 UTC 2024 I: Starting 1st build on remote node ionos15-amd64.debian.net. Mon Sep 30 07:10:15 UTC 2024 I: Preparing to do remote build '1' on ionos15-amd64.debian.net. Mon Sep 30 07:10:15 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos15-amd64.debian.net is marked as down. Mon Sep 30 07:10:15 UTC 2024 - checking via ssh if ionos15-amd64.debian.net is up. removed '/tmp/read-only-fs-test-owpty1' ==================================================================================== Sun Nov 2 13:33:17 UTC 2025 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos15-amd64, called using "1 sparsehash unstable /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65 2.0.3-2" as arguments. Sun Nov 2 13:33:17 UTC 2025 - actually running "reproducible_build.sh" (md5sum 79f74068471242981be9b3b00196cbfb) as "/tmp/jenkins-script-ve4uloZ8" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Sun Nov 2 13:33:17 UTC 2025 I: Downloading source for unstable/sparsehash=2.0.3-2 Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (6001 kB/s) Download complete and in download only mode Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (6001 kB/s) Download complete and in download only mode ============================================================================= Building sparsehash in unstable on amd64 on ionos15-amd64 now. Date: Sun Nov 2 13:33:17 UTC 2025 Date UTC: Sun Nov 2 13:33:17 UTC 2025 ============================================================================= W: /root/.pbuilderrc does not exist I: Logging to b1/build.log I: pbuilder: network access will be disabled during build I: Current time: Sun Nov 2 01:33:17 -12 2025 I: pbuilder-time-stamp: 1762090397 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [sparsehash_2.0.3-2.dsc] I: copying [./sparsehash_2.0.3.orig.tar.gz] I: copying [./sparsehash_2.0.3-2.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Apr 25 03:23:49 2020 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 sparsehash-2.0.3 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 I: using fakeroot in build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/3981432/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='amd64' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='d0a346bf413b4581914ccfc4cff4afd3' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='3981432' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_KGzw --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1 --logfile b1/build.log sparsehash_2.0.3-2.dsc' SUDO_GID='111' SUDO_UID='106' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://213.165.73.152:3128' I: uname -a Linux ionos15-amd64 6.10.6+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.10.6-1~bpo12+1 (2024-08-26) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin I: user script /srv/workspace/pbuilder/3981432/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper (>= 10) dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19786 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper (>= 10); however: Package debhelper is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 19.8 MB of archives. After unpacking 75.4 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.45-3 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.45-3 [105 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.45-3 [42.9 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.22.5-2 [200 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b1 [68.8 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-5 [1181 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.40.2-8 [97.3 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-4 [287 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 libtool all 2.4.7-7 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.191-2 [188 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 libicu72 amd64 72.1-5 [9396 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.1 [699 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.22.5-2 [1601 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.20 [915 kB] Fetched 19.8 MB in 2s (9585 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (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 ... 19786 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3_amd64.deb ... Unpacking libmagic-mgc (1:5.45-3) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.45-3) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3_amd64.deb ... Unpacking file (1:5.45-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_amd64.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../05-libuchardet0_0.0.8-1+b1_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b1) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_amd64.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-8_amd64.deb ... Unpacking bsdextrautils (2.40.2-8) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../08-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_amd64.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-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 .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-7_all.deb ... Unpacking libtool (2.4.7-7) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-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 .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../21-libelf1t64_0.191-2_amd64.deb ... Unpacking libelf1t64:amd64 (0.191-2) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:amd64. Preparing to unpack .../23-libicu72_72.1-5_amd64.deb ... Unpacking libicu72:amd64 (72.1-5) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.1_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_amd64.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up libicu72:amd64 (72.1-5) ... Setting up bsdextrautils (2.40.2-8) ... Setting up libmagic-mgc (1:5.45-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:amd64 (1:5.45-3) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3) ... Setting up libelf1t64:amd64 (0.191-2) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:amd64 (0.0.8-1+b1) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.1) ... 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 libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-7) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes 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 dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore fakeroot 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 build dh build dh_update_autotools_config cp -an --reflink=auto config.guess debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp cp: warning: behavior of -n is non-portable and may change in future; use --update=none instead 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 cp: warning: behavior of -n is non-portable and may change in future; use --update=none instead 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=x86_64-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/x86_64-linux-gnu --libexecdir=\${prefix}/lib/x86_64-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... checking how to include hash_fun directly... 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 -j42 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -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 '/build/reproducible-path/sparsehash-2.0.3' 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:621:9: note: synthesized method 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)' first required here 621 | y = x; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:639:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 639 | v = u; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = std::__cxx11::basic_string; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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/simple_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' 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::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 181 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 201 | TEST_onetype_##superclass##_##testname 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::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<4, 4>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<8, 8>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<16, 16>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<256, 256>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, 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::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_test simple_test.o In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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' 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' 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::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = long unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; 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::resize_table(size_type, size_type, google::true_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = long unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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::copy_from(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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 >'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair >' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1706 | resize(settings.table_size); // so the vector's sized ok | ^~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1114:44: required from 'bool google::sparse_hashtable::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 1114 | const bool result = table.read_metadata(fp); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparse_hash_map:345:67: required from 'bool google::sparse_hash_map::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair; pointer = std::pair*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; pointer = std::pair*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = long unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; 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::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = long unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::copy_from(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = long unsigned int]' 614 | dense_hashtable tmp(*this, resize_to); | ^~~ ./src/sparsehash/internal/densehashtable.h:967:5: required from 'std::pair, bool> google::dense_hashtable::insert(const_reference) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; const_reference = const std::__cxx11::basic_string&]' 967 | resize_delta(1); // adding an object, grow if need be | ^~~~~~~~~~~~ ./src/sparsehash/dense_hash_set:255:58: required from 'std::pair::Identity, google::dense_hash_set::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set::insert(const value_type&) [with Value = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; typename google::dense_hashtable::const_iterator = google::dense_hashtable_const_iterator, std::__cxx11::basic_string, {anonymous}::Hasher, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; value_type = std::__cxx11::basic_string]' 255 | std::pair 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'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(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' declared here 86 | class basic_string | ^~~~~~~~~~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test make -j42 check "TESTSUITEFLAGS=-j42 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make all-am make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' PASS: template_util_unittest PASS: type_traits_unittest PASS: libc_allocator_with_realloc_test PASS: simple_compat_test PASS: simple_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 '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary dh_testroot 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 '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev make -j42 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /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 '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' # Check to make sure pkg-config script version matches actual package version export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /build/reproducible-path/sparsehash-2.0.3/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 /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' 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 '/build/reproducible-path/sparsehash-2.0.3' dh_fixperms find debian/libsparsehash-dev -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 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 chown 0:0 -- 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 chown 0:0 -- debian/libsparsehash-dev/DEBIAN/md5sums dh_builddeb dpkg-deb --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_amd64.buildinfo dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_amd64.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) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/3981432 and its subdirectories I: Current time: Sun Nov 2 01:35:19 -12 2025 I: pbuilder-time-stamp: 1762090519 Sun Nov 2 13:35:19 UTC 2025 I: Signing ./b1/sparsehash_2.0.3-2_amd64.buildinfo as sparsehash_2.0.3-2_amd64.buildinfo.asc Sun Nov 2 13:35:19 UTC 2025 I: Signed ./b1/sparsehash_2.0.3-2_amd64.buildinfo as ./b1/sparsehash_2.0.3-2_amd64.buildinfo.asc Sun Nov 2 13:35:19 UTC 2025 - build #1 for sparsehash/unstable/amd64 on ionos15-amd64 done. Starting cleanup. All cleanup done. Sun Nov 2 13:35:19 UTC 2025 - reproducible_build.sh stopped running as /tmp/jenkins-script-ve4uloZ8, removing. /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65: total 16 drwxr-xr-x 2 jenkins jenkins 4096 Sep 30 07:12 b1 drwxr-xr-x 2 jenkins jenkins 4096 Sep 30 07:10 b2 -rw------- 1 jenkins jenkins 2941 Sep 30 07:10 rbuildlog.l6MEXYf -rw-r--r-- 1 jenkins jenkins 1818 Apr 25 2020 sparsehash_2.0.3-2.dsc /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1: total 380 -rw-r--r-- 1 jenkins jenkins 271012 Sep 30 07:12 build.log -rw-r--r-- 1 jenkins jenkins 75920 Sep 30 07:12 libsparsehash-dev_2.0.3-2_all.deb -rw-r--r-- 1 jenkins jenkins 4740 Sep 30 07:12 sparsehash_2.0.3-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1818 Sep 30 07:12 sparsehash_2.0.3-2.dsc -rw-r--r-- 1 jenkins jenkins 4649 Sep 30 07:12 sparsehash_2.0.3-2_amd64.buildinfo -rw-r--r-- 1 jenkins jenkins 5531 Sep 30 07:12 sparsehash_2.0.3-2_amd64.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1095 Sep 30 07:12 sparsehash_2.0.3-2_amd64.changes -rw-r--r-- 1 jenkins jenkins 1212 Sep 30 07:12 sparsehash_2.0.3-2_source.changes /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2: total 0 Mon Sep 30 07:12:20 UTC 2024 I: Deleting $TMPDIR on ionos15-amd64.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Sun Nov 2 01:33:17 -12 2025 I: pbuilder-time-stamp: 1762090397 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [sparsehash_2.0.3-2.dsc] I: copying [./sparsehash_2.0.3.orig.tar.gz] I: copying [./sparsehash_2.0.3-2.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Apr 25 03:23:49 2020 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 sparsehash-2.0.3 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 I: using fakeroot in build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/3981432/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='amd64' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='d0a346bf413b4581914ccfc4cff4afd3' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='3981432' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_KGzw --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1 --logfile b1/build.log sparsehash_2.0.3-2.dsc' SUDO_GID='111' SUDO_UID='106' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://213.165.73.152:3128' I: uname -a Linux ionos15-amd64 6.10.6+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.10.6-1~bpo12+1 (2024-08-26) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin I: user script /srv/workspace/pbuilder/3981432/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper (>= 10) dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19786 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper (>= 10); however: Package debhelper is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 19.8 MB of archives. After unpacking 75.4 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.45-3 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.45-3 [105 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.45-3 [42.9 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.22.5-2 [200 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b1 [68.8 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-5 [1181 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.40.2-8 [97.3 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-4 [287 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 libtool all 2.4.7-7 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.191-2 [188 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 libicu72 amd64 72.1-5 [9396 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.1 [699 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.22.5-2 [1601 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.20 [915 kB] Fetched 19.8 MB in 2s (9585 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (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 ... 19786 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3_amd64.deb ... Unpacking libmagic-mgc (1:5.45-3) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.45-3) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3_amd64.deb ... Unpacking file (1:5.45-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_amd64.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../05-libuchardet0_0.0.8-1+b1_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b1) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_amd64.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-8_amd64.deb ... Unpacking bsdextrautils (2.40.2-8) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../08-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_amd64.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-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 .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-7_all.deb ... Unpacking libtool (2.4.7-7) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-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 .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../21-libelf1t64_0.191-2_amd64.deb ... Unpacking libelf1t64:amd64 (0.191-2) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:amd64. Preparing to unpack .../23-libicu72_72.1-5_amd64.deb ... Unpacking libicu72:amd64 (72.1-5) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.1_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_amd64.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up libicu72:amd64 (72.1-5) ... Setting up bsdextrautils (2.40.2-8) ... Setting up libmagic-mgc (1:5.45-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:amd64 (1:5.45-3) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3) ... Setting up libelf1t64:amd64 (0.191-2) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:amd64 (0.0.8-1+b1) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.1) ... 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 libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-7) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes 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 dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore fakeroot 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 build dh build dh_update_autotools_config cp -an --reflink=auto config.guess debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp cp: warning: behavior of -n is non-portable and may change in future; use --update=none instead 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 cp: warning: behavior of -n is non-portable and may change in future; use --update=none instead 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=x86_64-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/x86_64-linux-gnu --libexecdir=\${prefix}/lib/x86_64-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... checking how to include hash_fun directly... 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 -j42 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -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 '/build/reproducible-path/sparsehash-2.0.3' 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:621:9: note: synthesized method 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)' first required here 621 | y = x; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:639:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 639 | v = u; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = std::__cxx11::basic_string; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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/simple_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' 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::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 181 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 201 | TEST_onetype_##superclass##_##testname 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::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<4, 4>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<8, 8>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<16, 16>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<256, 256>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, 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::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_test simple_test.o In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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' 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' 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::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = long unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; 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::resize_table(size_type, size_type, google::true_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = long unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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::copy_from(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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 >'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair >' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1706 | resize(settings.table_size); // so the vector's sized ok | ^~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1114:44: required from 'bool google::sparse_hashtable::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 1114 | const bool result = table.read_metadata(fp); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparse_hash_map:345:67: required from 'bool google::sparse_hash_map::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair; pointer = std::pair*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; pointer = std::pair*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = long unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; 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::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = long unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::copy_from(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = long unsigned int]' 614 | dense_hashtable tmp(*this, resize_to); | ^~~ ./src/sparsehash/internal/densehashtable.h:967:5: required from 'std::pair, bool> google::dense_hashtable::insert(const_reference) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; const_reference = const std::__cxx11::basic_string&]' 967 | resize_delta(1); // adding an object, grow if need be | ^~~~~~~~~~~~ ./src/sparsehash/dense_hash_set:255:58: required from 'std::pair::Identity, google::dense_hash_set::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set::insert(const value_type&) [with Value = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; typename google::dense_hashtable::const_iterator = google::dense_hashtable_const_iterator, std::__cxx11::basic_string, {anonymous}::Hasher, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; value_type = std::__cxx11::basic_string]' 255 | std::pair 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'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(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' declared here 86 | class basic_string | ^~~~~~~~~~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test make -j42 check "TESTSUITEFLAGS=-j42 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make all-am make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' PASS: template_util_unittest PASS: type_traits_unittest PASS: libc_allocator_with_realloc_test PASS: simple_compat_test PASS: simple_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 '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary dh_testroot 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 '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev make -j42 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /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 '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' # Check to make sure pkg-config script version matches actual package version export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /build/reproducible-path/sparsehash-2.0.3/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 /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' 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 '/build/reproducible-path/sparsehash-2.0.3' dh_fixperms find debian/libsparsehash-dev -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 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 chown 0:0 -- 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 chown 0:0 -- debian/libsparsehash-dev/DEBIAN/md5sums dh_builddeb dpkg-deb --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_amd64.buildinfo dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_amd64.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) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/3981432 and its subdirectories I: Current time: Sun Nov 2 01:35:19 -12 2025 I: pbuilder-time-stamp: 1762090519 Mon Sep 30 07:12:20 UTC 2024 I: 1st build successful. Starting 2nd build on remote node ionos11-amd64.debian.net. Mon Sep 30 07:12:20 UTC 2024 I: Preparing to do remote build '2' on ionos11-amd64.debian.net. Mon Sep 30 07:12:20 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos11-amd64.debian.net is marked as down. Mon Sep 30 07:12:20 UTC 2024 - checking via ssh if ionos11-amd64.debian.net is up. removed '/tmp/read-only-fs-test-UpTIiq' ==================================================================================== Mon Sep 30 07:12:22 UTC 2024 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos11-amd64, called using "2 sparsehash unstable /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65 2.0.3-2" as arguments. Mon Sep 30 07:12:22 UTC 2024 - actually running "reproducible_build.sh" (md5sum 79f74068471242981be9b3b00196cbfb) as "/tmp/jenkins-script-k1CXTsLL" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Mon Sep 30 07:12:22 UTC 2024 I: Downloading source for unstable/sparsehash=2.0.3-2 Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (2915 kB/s) Download complete and in download only mode Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian unstable/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (2915 kB/s) Download complete and in download only mode ============================================================================= Re-Building sparsehash in unstable on amd64 on ionos11-amd64 now. Date: Mon Sep 30 07:12:23 UTC 2024 Date UTC: Mon Sep 30 07:12:23 UTC 2024 ============================================================================= ++ mktemp -t pbuilderrc_XXXX --tmpdir=/srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65 + local TMPCFG=/srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_yAul + case ${ARCH} in + case $ARCH in + locale=et_EE + language=et + case "${SUITE}" in + reproducible_buildflags=+all + extra_deb_build_options= + case "${SRCPACKAGE}" in + cat + echo BUILDDIR=/build/reproducible-path + '[' sparsehash = debian-installer -o sparsehash = debian-installer-netboot-images ']' + pbuilder_options=() + local pbuilder_options + DEBBUILDOPTS=-b + BINARYTARGET= + '[' sparsehash = u-boot ']' + case "${SRCPACKAGE}" in + PBUILDERTIMEOUT=24 + local PRESULT=0 + sudo timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_yAul --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2 --logfile b2/build.log sparsehash_2.0.3-2.dsc W: /root/.pbuilderrc does not exist I: Logging to b2/build.log I: pbuilder: network access will be disabled during build I: Current time: Mon Sep 30 21:12:24 +14 2024 I: pbuilder-time-stamp: 1727680344 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [sparsehash_2.0.3-2.dsc] I: copying [./sparsehash_2.0.3.orig.tar.gz] I: copying [./sparsehash_2.0.3-2.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Apr 25 03:23:49 2020 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 sparsehash-2.0.3 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 I: using fakeroot in build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D01_modify_environment starting debug: Running on ionos11-amd64. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash '/bin/sh' -> '/bin/bash' lrwxrwxrwx 1 root root 9 Sep 30 07:13 /bin/sh -> /bin/bash I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") BASH_VERSION='5.2.32(1)-release' BUILDDIR=/build/reproducible-path BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=amd64 DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' DIRSTACK=() DISTRIBUTION=unstable EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/root HOSTNAME=i-capture-the-hostname HOSTTYPE=x86_64 HOST_ARCH=amd64 IFS=' ' INVOCATION_ID=590c47a76ebb4cb3b5d7445ec243e85d LANG=C LANGUAGE=et_EE:et LC_ALL=C MACHTYPE=x86_64-pc-linux-gnu MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path PBCURRENTCOMMANDLINEOPERATION=build PBUILDER_OPERATION=build PBUILDER_PKGDATADIR=/usr/share/pbuilder PBUILDER_PKGLIBDIR=/usr/lib/pbuilder PBUILDER_SYSCONFDIR=/etc PIPESTATUS=([0]="0") POSIXLY_CORRECT=y PPID=2242429 PS4='+ ' PWD=/ SHELL=/bin/bash SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix SHLVL=3 SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_yAul --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2 --logfile b2/build.log sparsehash_2.0.3-2.dsc' SUDO_GID=111 SUDO_UID=106 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root _='I: set' http_proxy=http://46.16.76.132:3128 I: uname -a Linux i-capture-the-hostname 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper (>= 10) dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19786 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper (>= 10); however: Package debhelper is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 19.8 MB of archives. After unpacking 75.4 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.45-3 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.45-3 [105 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.45-3 [42.9 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.22.5-2 [200 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b1 [68.8 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-5 [1181 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.40.2-8 [97.3 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-4 [287 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 libtool all 2.4.7-7 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.191-2 [188 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 libicu72 amd64 72.1-5 [9396 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.1 [699 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.22.5-2 [1601 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.20 [915 kB] Fetched 19.8 MB in 1s (24.9 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (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 ... 19786 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3_amd64.deb ... Unpacking libmagic-mgc (1:5.45-3) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.45-3) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3_amd64.deb ... Unpacking file (1:5.45-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_amd64.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../05-libuchardet0_0.0.8-1+b1_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b1) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_amd64.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-8_amd64.deb ... Unpacking bsdextrautils (2.40.2-8) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../08-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_amd64.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-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 .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-7_all.deb ... Unpacking libtool (2.4.7-7) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-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 .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../21-libelf1t64_0.191-2_amd64.deb ... Unpacking libelf1t64:amd64 (0.191-2) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:amd64. Preparing to unpack .../23-libicu72_72.1-5_amd64.deb ... Unpacking libicu72:amd64 (72.1-5) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.1_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_amd64.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up libicu72:amd64 (72.1-5) ... Setting up bsdextrautils (2.40.2-8) ... Setting up libmagic-mgc (1:5.45-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:amd64 (1:5.45-3) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3) ... Setting up libelf1t64:amd64 (0.191-2) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:amd64 (0.0.8-1+b1) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.1) ... 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 libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-7) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/A99_set_merged_usr starting Not re-configuring usrmerge for unstable I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/A99_set_merged_usr finished hostname: Name or service not known I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes 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 dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore fakeroot 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 build dh build dh_update_autotools_config cp -an --reflink=auto config.guess debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp cp: warning: behavior of -n is non-portable and may change in future; use --update=none instead 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 cp: warning: behavior of -n is non-portable and may change in future; use --update=none instead 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=x86_64-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/x86_64-linux-gnu --libexecdir=\${prefix}/lib/x86_64-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... checking how to include hash_fun directly... 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 -j20 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -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 '/build/reproducible-path/sparsehash-2.0.3' 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:621:9: note: synthesized method 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)' first required here 621 | y = x; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:639:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 639 | v = u; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = std::__cxx11::basic_string; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ 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::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o 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::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' 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::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 181 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 201 | TEST_onetype_##superclass##_##testname 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::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<4, 4>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<8, 8>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<16, 16>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = long unsigned int; const_reference = const std::pair* 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<256, 256>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, 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::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = long unsigned int; const_reference = const std::pair, 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::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, 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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* 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*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(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, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(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, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 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, 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>' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_test simple_test.o In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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' 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' 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::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = long unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; 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::resize_table(size_type, size_type, google::true_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = long unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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::copy_from(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; 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 >'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair >' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1706 | resize(settings.table_size); // so the vector's sized ok | ^~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1114:44: required from 'bool google::sparse_hashtable::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 1114 | const bool result = table.read_metadata(fp); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparse_hash_map:345:67: required from 'bool google::sparse_hash_map::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 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' 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' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair; pointer = std::pair*; size_type = long unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; pointer = std::pair*; size_type = long unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = long unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; 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::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = long unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::copy_from(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = long unsigned int]' 614 | dense_hashtable tmp(*this, resize_to); | ^~~ ./src/sparsehash/internal/densehashtable.h:967:5: required from 'std::pair, bool> google::dense_hashtable::insert(const_reference) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; const_reference = const std::__cxx11::basic_string&]' 967 | resize_delta(1); // adding an object, grow if need be | ^~~~~~~~~~~~ ./src/sparsehash/dense_hash_set:255:58: required from 'std::pair::Identity, google::dense_hash_set::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set::insert(const value_type&) [with Value = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; typename google::dense_hashtable::const_iterator = google::dense_hashtable_const_iterator, std::__cxx11::basic_string, {anonymous}::Hasher, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; value_type = std::__cxx11::basic_string]' 255 | std::pair 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'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(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' declared here 86 | class basic_string | ^~~~~~~~~~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; 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::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; 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_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(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' 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' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test make -j20 check "TESTSUITEFLAGS=-j20 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make all-am make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' PASS: libc_allocator_with_realloc_test PASS: simple_test PASS: simple_compat_test PASS: type_traits_unittest PASS: template_util_unittest 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 '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary dh_testroot 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 '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev make -j20 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' # Check to make sure pkg-config script version matches actual package version export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /build/reproducible-path/sparsehash-2.0.3/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 /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' 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 '/build/reproducible-path/sparsehash-2.0.3' dh_fixperms find debian/libsparsehash-dev -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 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 chown 0:0 -- 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 chown 0:0 -- debian/libsparsehash-dev/DEBIAN/md5sums dh_builddeb dpkg-deb --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_amd64.buildinfo dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_amd64.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) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/2242429 and its subdirectories I: Current time: Mon Sep 30 21:19:37 +14 2024 I: pbuilder-time-stamp: 1727680777 + false + set +x Mon Sep 30 07:19:37 UTC 2024 I: Signing ./b2/sparsehash_2.0.3-2_amd64.buildinfo as sparsehash_2.0.3-2_amd64.buildinfo.asc Mon Sep 30 07:19:37 UTC 2024 I: Signed ./b2/sparsehash_2.0.3-2_amd64.buildinfo as ./b2/sparsehash_2.0.3-2_amd64.buildinfo.asc Mon Sep 30 07:19:37 UTC 2024 - build #2 for sparsehash/unstable/amd64 on ionos11-amd64 done. Starting cleanup. All cleanup done. Mon Sep 30 07:19:37 UTC 2024 - reproducible_build.sh stopped running as /tmp/jenkins-script-k1CXTsLL, removing. /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65: total 284 drwxr-xr-x 2 jenkins jenkins 4096 Sep 30 07:12 b1 drwxr-xr-x 2 jenkins jenkins 4096 Sep 30 07:19 b2 -rw------- 1 jenkins jenkins 274242 Sep 30 07:12 rbuildlog.l6MEXYf -rw-r--r-- 1 jenkins jenkins 1818 Apr 25 2020 sparsehash_2.0.3-2.dsc /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1: total 388 -rw-r--r-- 1 jenkins jenkins 271012 Sep 30 07:12 build.log -rw-r--r-- 1 jenkins jenkins 75920 Sep 30 07:12 libsparsehash-dev_2.0.3-2_all.deb -rw-r--r-- 1 jenkins jenkins 4740 Sep 30 07:12 sparsehash_2.0.3-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1818 Sep 30 07:12 sparsehash_2.0.3-2.dsc -rw-r--r-- 1 jenkins jenkins 4649 Sep 30 07:12 sparsehash_2.0.3-2_amd64.buildinfo -rw-r--r-- 1 jenkins jenkins 5531 Sep 30 07:12 sparsehash_2.0.3-2_amd64.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1095 Sep 30 07:12 sparsehash_2.0.3-2_amd64.changes -rw-r--r-- 1 jenkins jenkins 1212 Sep 30 07:12 sparsehash_2.0.3-2_source.changes /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2: total 380 -rw-r--r-- 1 jenkins jenkins 272933 Sep 30 07:19 build.log -rw-r--r-- 1 jenkins jenkins 75920 Sep 30 07:19 libsparsehash-dev_2.0.3-2_all.deb -rw-r--r-- 1 jenkins jenkins 4740 Sep 30 07:19 sparsehash_2.0.3-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1818 Sep 30 07:19 sparsehash_2.0.3-2.dsc -rw-r--r-- 1 jenkins jenkins 4640 Sep 30 07:19 sparsehash_2.0.3-2_amd64.buildinfo -rw-r--r-- 1 jenkins jenkins 5522 Sep 30 07:19 sparsehash_2.0.3-2_amd64.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1095 Sep 30 07:19 sparsehash_2.0.3-2_amd64.changes -rw-r--r-- 1 jenkins jenkins 1212 Sep 30 07:19 sparsehash_2.0.3-2_source.changes Mon Sep 30 07:19:38 UTC 2024 I: Deleting $TMPDIR on ionos11-amd64.debian.net. Mon Sep 30 07:19:38 UTC 2024 I: sparsehash_2.0.3-2_amd64.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: unstable Urgency: medium Maintainer: Athena Capital Research Changed-By: Roberto C. Sanchez 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 5952423c39c60edfc2e46d8ac29ab823bbc19373 4649 sparsehash_2.0.3-2_amd64.buildinfo Checksums-Sha256: 3f26eea01f370f133fe2fccb3715c209f058f734587578192798cb9f59c3abec 75920 libsparsehash-dev_2.0.3-2_all.deb 5d074bf6aea69d619441b85a090fb35e93bec32ec7d288eb53cb6c8d41a890c3 4649 sparsehash_2.0.3-2_amd64.buildinfo Files: 026cbb770736909305fb71b588c6fe2f 75920 libdevel optional libsparsehash-dev_2.0.3-2_all.deb f02fc0f2db285b023490be11074c18f3 4649 libdevel optional sparsehash_2.0.3-2_amd64.buildinfo removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/sparsehash_2.0.3-2.rbuild.log' removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/sparsehash_2.0.3-2.rbuild.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/unstable/amd64/sparsehash_2.0.3-2.build1.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/unstable/amd64/sparsehash_2.0.3-2.build2.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/buildinfo/unstable/amd64/sparsehash_2.0.3-2_amd64.buildinfo' removed '/var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/amd64/sparsehash_2.0.3-2.diff.gz' Diff of the two buildlogs: -- --- b1/build.log 2024-09-30 07:12:19.957237148 +0000 +++ b2/build.log 2024-09-30 07:19:38.182579663 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sun Nov 2 01:33:17 -12 2025 -I: pbuilder-time-stamp: 1762090397 +I: Current time: Mon Sep 30 21:12:24 +14 2024 +I: pbuilder-time-stamp: 1727680344 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -27,52 +27,84 @@ dpkg-source: info: applying 00_adjust_upstream_build.patch I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3981432/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D01_modify_environment starting +debug: Running on ionos11-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Sep 30 07:13 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='d0a346bf413b4581914ccfc4cff4afd3' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='3981432' - PS1='# ' - PS2='> ' + INVOCATION_ID=590c47a76ebb4cb3b5d7445ec243e85d + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=2242429 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_KGzw --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1 --logfile b1/build.log sparsehash_2.0.3-2.dsc' - SUDO_GID='111' - SUDO_UID='106' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/pbuilderrc_yAul --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2 --logfile b2/build.log sparsehash_2.0.3-2.dsc' + SUDO_GID=111 + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos15-amd64 6.10.6+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.10.6-1~bpo12+1 (2024-08-26) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3981432/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -137,7 +169,7 @@ Get: 27 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.20 [915 kB] -Fetched 19.8 MB in 2s (9585 kB/s) +Fetched 19.8 MB in 1s (24.9 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (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 ... 19786 files and directories currently installed.) @@ -273,7 +305,11 @@ fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes dpkg-buildpackage: info: source package sparsehash dpkg-buildpackage: info: source version 2.0.3-2 dpkg-buildpackage: info: source distribution unstable @@ -457,7 +493,7 @@ config.status: creating src/config.h config.status: executing depfiles commands dh_auto_build - make -j42 + make -j20 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -d src/sparsehash/internal ] || mkdir -p src/sparsehash/internal echo "/*" > src/sparsehash/internal/_sparsehash_config @@ -532,33 +568,6 @@ src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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/simple_test.cc:40: -./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': -./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' - 1123 | set_aux(offset, realloc_and_memmove_ok()); - | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' - 1608 | reference retval = which_group(i).set(pos_in_group(i), val); - | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ -./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' - 935 | table.set(pos, obj); - | ~~~~~~~~~^~~~~~~~~~ -./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' - 246 | return rep.template find_or_insert(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' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] - 1091 | memcpy(group + i, group + i-1, sizeof(*group)); - | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from ./src/google/sparse_hash_set:34, @@ -591,12 +600,7 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ -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' declared here - 284 | struct pair - | ^~~~ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); @@ -636,6 +640,38 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o +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::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': +./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' + 1123 | set_aux(offset, realloc_and_memmove_ok()); + | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = long unsigned int; const_reference = const std::pair&]' + 1608 | reference retval = which_group(i).set(pos_in_group(i), val); + | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ +./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = long unsigned int]' + 935 | table.set(pos, obj); + | ~~~~~~~~~^~~~~~~~~~ +./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; 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::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' + 246 | return rep.template find_or_insert(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' 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' declared here + 284 | struct pair + | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); @@ -1650,7 +1686,6 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_test simple_test.o In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': @@ -1878,13 +1913,14 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test - make -j42 check "TESTSUITEFLAGS=-j42 --verbose" VERBOSE=1 + make -j20 check "TESTSUITEFLAGS=-j20 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' @@ -1897,11 +1933,11 @@ make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' -PASS: template_util_unittest -PASS: type_traits_unittest PASS: libc_allocator_with_realloc_test -PASS: simple_compat_test PASS: simple_test +PASS: simple_compat_test +PASS: type_traits_unittest +PASS: template_util_unittest PASS: sparsetable_unittest PASS: hashtable_test ============================================================================ @@ -1933,22 +1969,22 @@ make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev - make -j42 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no + make -j20 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' + /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' - /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' - /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' + /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' - /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' + /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' + /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/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 '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' @@ -2017,12 +2053,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2242429/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/3981432 and its subdirectories -I: Current time: Sun Nov 2 01:35:19 -12 2025 -I: pbuilder-time-stamp: 1762090519 +I: removing directory /srv/workspace/pbuilder/2242429 and its subdirectories +I: Current time: Mon Sep 30 21:19:37 +14 2024 +I: pbuilder-time-stamp: 1727680777 Compressing the 2nd log... /var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/amd64/sparsehash_2.0.3-2.diff: 81.3% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/amd64/sparsehash_2.0.3-2.diff.gz b2/build.log: 92.4% -- replaced with stdout Compressing the 1st log... b1/build.log: 92.6% -- replaced with stdout Mon Sep 30 07:19:40 UTC 2024 I: diffoscope 278 will be used to compare the two builds: ++ date -u +%s + DIFFOSCOPE_STAMP=/var/log/reproducible-builds/diffoscope_stamp_sparsehash_unstable_amd64_1727680780 + touch /var/log/reproducible-builds/diffoscope_stamp_sparsehash_unstable_amd64_1727680780 + RESULT=0 + systemd-run '--description=diffoscope on sparsehash/2.0.3-2 in unstable/amd64' --slice=rb-build-diffoscope.slice -u rb-diffoscope-amd64_28-35160 '--property=SuccessExitStatus=1 124' --user --send-sighup --pipe --wait -E TMPDIR timeout 155m nice schroot --directory /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65 --run-session -c jenkins-reproducible-unstable-diffoscope-edd7f225-7dc8-484f-a050-03115a3863e9 -- sh -c 'export TMPDIR=/srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/dbd-tmp-C0oEdI6 ; timeout 150m diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/sparsehash_2.0.3-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/sparsehash_2.0.3-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/sparsehash_2.0.3-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1/sparsehash_2.0.3-2_amd64.changes /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2/sparsehash_2.0.3-2_amd64.changes' + false + set +x Running as unit: rb-diffoscope-amd64_28-35160.service Warning: program compiled against libxml 212 using older 209 # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/sparsehash_2.0.3-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/sparsehash_2.0.3-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/sparsehash_2.0.3-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b1/sparsehash_2.0.3-2_amd64.changes /srv/reproducible-results/rbuild-debian/r-b-build.KACEXF65/b2/sparsehash_2.0.3-2_amd64.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call abc.DotChangesFile ## main (total time: 0.412s) 0.412s 2 calls outputs 0.000s 1 call cleanup ## recognizes (total time: 0.015s) 0.015s 12 calls diffoscope.comparators.binary.FilesystemFile ## specialize (total time: 0.000s) 0.000s 1 call specialize Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 845ms CPU time consumed: 823ms _ _ ___ _ __ __ _ _ __ ___ ___| |__ __ _ ___| |__ / __| '_ \ / _` | '__/ __|/ _ \ '_ \ / _` / __| '_ \ \__ \ |_) | (_| | | \__ \ __/ | | | (_| \__ \ | | | |___/ .__/ \__,_|_| |___/\___|_| |_|\__,_|___/_| |_| |_| Mon Sep 30 07:19:41 UTC 2024 I: diffoscope 278 found no differences in the changes files, and a .buildinfo file also exists. Mon Sep 30 07:19:41 UTC 2024 I: sparsehash from unstable built successfully and reproducibly on amd64. INSERT 0 1 INSERT 0 1 DELETE 1 [2024-09-30 07:19:42] INFO: Starting at 2024-09-30 07:19:42.107498 [2024-09-30 07:19:42] INFO: Generating the pages of 1 package(s) [2024-09-30 07:19:42] CRITICAL: https://tests.reproducible-builds.org/debian/unstable/amd64/sparsehash didn't produce a buildlog, even though it has been built. [2024-09-30 07:19:42] INFO: Finished at 2024-09-30 07:19:42.731029, took: 0:00:00.623539 Mon Sep 30 07:19:42 UTC 2024 - successfully updated the database and updated https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/sparsehash.html Mon Sep 30 07:19:42 UTC 2024 I: Submitting .buildinfo files to external archives: Mon Sep 30 07:19:42 UTC 2024 I: Submitting 8.0K b1/sparsehash_2.0.3-2_amd64.buildinfo.asc https://buildinfo.debian.net/5952423c39c60edfc2e46d8ac29ab823bbc19373/sparsehash_2.0.3-2_all Mon Sep 30 07:19:43 UTC 2024 I: Submitting 8.0K b2/sparsehash_2.0.3-2_amd64.buildinfo.asc https://buildinfo.debian.net/401d7e1864e3d2b1a53652c566a3948939c38554/sparsehash_2.0.3-2_all Mon Sep 30 07:19:44 UTC 2024 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Mon Sep 30 07:19:44 UTC 2024 I: Done submitting .buildinfo files. Mon Sep 30 07:19:44 UTC 2024 I: Removing signed sparsehash_2.0.3-2_amd64.buildinfo.asc files: removed './b1/sparsehash_2.0.3-2_amd64.buildinfo.asc' removed './b2/sparsehash_2.0.3-2_amd64.buildinfo.asc' 1727680784 amd64 unstable sparsehash Starting cleanup. /var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/sparsehash_2.0.3-2.rbuild.log: 91.7% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/amd64/sparsehash_2.0.3-2.rbuild.log.gz [2024-09-30 07:19:44] INFO: Starting at 2024-09-30 07:19:44.702498 [2024-09-30 07:19:44] INFO: Generating the pages of 1 package(s) [2024-09-30 07:19:45] INFO: Finished at 2024-09-30 07:19:45.268792, took: 0:00:00.566303 All cleanup done. Mon Sep 30 07:19:45 UTC 2024 - total duration: 0h 9m 33s. Mon Sep 30 07:19:45 UTC 2024 - reproducible_build.sh stopped running as /tmp/jenkins-script-uJfnINMz, removing. Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 9min 37.248s CPU time consumed: 9.149s